Jump to content
  • 0

font-size в процентах


skvor
 Share

Question

Где посмотреть - от чего отсчитывается процентное указание высоты шрифта для разных тегов.

Пример - если указать размер для body, то у таблицы высота шрифта не изменится.

Ещё пример: обернул таблицу в DIV и назначил DIV-у размер шрифта, у таблицы ничего не назначал, в DIV-е шрифт изменился, у таблицы - нет. Поставил для таблицы шрифт в процентах, в результате, размер шрифта в таблице стал относительным к DIV-у.

Спасибо

Edited by skvor
Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

http://poisk5.ts6.ru/html-css/css-2.html там может ответ есть

Опять этот минусолюбитель появился, даже догадываюсь кто это ))) вот другая ссылка)) )))

Edited by Николя223
  • Like 1
Link to comment
Share on other sites

  • 0
А доктайп за вас Пушкин ставить будет? :)

У меня Докатайпофобия :devil:

Я хочу понять процедуру/последовательность инициализации браузером параметров связанных с font-size.

Например

<div> 
... </div>

font-size для p в процентах будет относительно к div.

А как для

<html> <body>...</body> </html>

базовым для body будет html или body имеет собственную инициализацию?

Для table я экспериментально определил, что font-size назначается независимо от определений для body и html. Но если в стиле для table указать font-size в процентах, то базовым значением будет body.

Вот пример не-наследования таблицей font-size-а от родительсокго контейнера

<div style="font-size: 32px;">
Table in Div
<table>
<caption>Table</caption>
<tr><th>11</th><td>12</td><td>13</td></tr>
<tr><td>21</td><td>22</td><td>23</td></tr>
<tr><td>31</td><td>32</td><td>33</td></tr>
</table>
</div>

Кстати, с заголовками аналогичная хрень, указания для body не влияет на размер заголовка, если нет определения в стиле заголовка :dash:

<h1>Заголовок с начальной собственной высотой.</h1>
<h1 style="font-size: 50%;">Заголовок с высотой относительно шрифта body</h1>

Упрощаю вопрос

font-size: 150%;

1) У какого тега будет браться размер за 100%?

2) Кроме table, какие теги имеют собственную инициализацию?

Edited by skvor
Link to comment
Share on other sites

  • 0

1) У родительского.

2) Со стандартным доктайпом — теоретически, никакие (но с элементами форм лучше перестраховаться). Без доктайпа (т.е. в «режиме странностей») может быть всё, что угодно, и обижаться не на кого. От доктайпофобии нужно срочно избавляться :)

  • Like 2
Link to comment
Share on other sites

  • 0
1) У родительского.

2) Со стандартным доктайпом — теоретически, никакие

А вот нифига :blush:

Я приписал к своему примеру с таблицей

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

и ничо, всё таки осталось - таблица не наследует указание от родителя.

Работать будет только если убрать DTD и PUBLIC, т.е. привести к HTML5.

А из этого следует, что старые браузеры тоже будут работать по своим заморочкам.

———

ТБЛ - цифровой фОшист :devil:

Link to comment
Share on other sites

  • 0

базовым для body будет html или body имеет собственную инициализацию?

Чтоб это проверить, достаточно поставить что-то вроде

html{font-size:10px;}
*{font-size:200%;}

и станет видно, что родитель для <body> в размере шрифта - это <html>, что логично.

Но если в стиле для table указать font-size в процентах, то базовым значением будет body.

Странно, но в моем случае база при задании в % - все тот же <html> аж до самого <td>.

Вот пример не-наследования таблицей font-size-а от родительсокго контейнера

Может я чего-то не понял, но у меня все внутренние элементы дружно перехватили от <div>-а 32px.

Может моя "проблема" в том, что я использовал <!DOCTYPE html> )

А из этого следует, что старые браузеры тоже будут работать по своим заморочкам.

"Старые" - в смысле в которых нет поддержки элементов HTML5 и CSS3? Так а разве эти правила наследования не задолго до HTML5 появились?

Вообще-то теоретически, какой ни ставь <DOCTYPE>, браузеру абсолютно без разницы. Если <DOCTYPE> указан, то браузер просто работает в standard mode. Не указан - quirks mode. Простая переключалка. А все описания по обработке элементов, которые когда-то планировалось транслировать через доктайпы (для работы с "нормальными" элементами, "deprecated" и фреймами), браузеры давно и сами знают и никого не спрашивают. Либо могут обработать элемент, либо - нет.

Link to comment
Share on other sites

  • 0
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

Равносилен его отсутствию :). Забудьте вообще про "Transitional", ну сколько можно, как в старом анекдоте, "стоять такой раскорякой — одной ногой в прошлом, другой в светлом будущем"!

А из этого следует, что старые браузеры тоже будут работать по своим заморочкам.

Старые — это IE5- и NS6-, что ли? А кого они волнуют в 2012 году-то? :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy