2012-01-17 30 views
5

Vấn đề rất phổ biến với font-face, ví dụ:Làm thế nào để bù đắp dòng cơ sở chiều cao dòng?

font: 20px/20px 'ITC Avant Garde Gothic Std'; font-style: 'book'; letter-spacing: 1px; text-transform: uppercase; 

enter image description here

Vấn đề là tôi mong đợi văn bản theo chiều dọc làm trung tâm. Tuy nhiên, nó không phải là. Có cách nào để bù đắp đường cơ sở dòng chiều cao không? Không thực sự thay đổi line-height.

Trả lời

2

Hiện tượng này phụ thuộc vào phông chữ. Việc thiết kế phông chữ quyết định cách phông chữ sử dụng chiều cao của nó. Ví dụ: trong Arial, khi được đặt bằng chữ in hoa, chữ thường La tinh cơ bản được căn giữa theo chiều dọc, trong khi ở Verdana, chúng xuất hiện hơi thấp hơn một chút (tức là, nhiều hơn một chút so với bên dưới).

Bạn có thể tinh chỉnh điều này bằng cách sử dụng vị trí tương đối, nhưng sau đó bạn cần thêm đánh dấu, ví dụ:

<div><span>text</span></div> 

với CSS cho các thiết lập span, nói,

position: relative; 
top: 2px; 

này có thể gây ảnh hưởng xấu nếu các font sử dụng trong trình duyệt của người dùng khác với mong đợi của bạn.

Tôi không xem xét hiệu ứng có thể có của font-style: 'book', vì tôi không biết ý nghĩa của nó. Không có tài nguyên CSS nào tôi biết đề cập đến bất kỳ điều gì giống như vậy (các giá trị font-style là các từ khóa không được bỏ phiếu và không inlcude book).

+1

Chỉ cần cho bạn biết, tham chiếu 'kiểu phông chữ: 'sách' 'đối với thành viên gia đình phông chữ có kiểu' sách'. Cảm ơn bạn đã tip về vị trí tương đối. Vấn đề là mặc dù, ví dụ, trên Opera, phông chữ xuất hiện như mong đợi, tức là. theo chiều dọc. Do đó, việc áp dụng bản sửa lỗi giống như của bạn, sẽ không làm cho nó tương thích với nhiều trình duyệt. Điều này cũng làm cho nó trông như thể đây không phải là vấn đề phông chữ? – Gajus

Các vấn đề liên quan