Почему <h5> и <h6> имеют меньший размер шрифта, чем <p>в большинстве таблиц стилей по умолчанию для пользовательских агентов? - PullRequest
22 голосов
/ 15 апреля 2019

Заголовки разделов по умолчанию <h5> и <h6> в HTML5 имеют размеры шрифта 0.83em и 0.67em соответственно, тогда как размер шрифта <p> по умолчанию равен 1em. Это означает, что в блоке текста, содержащем теги <h5>, <h6> и <p>, эти заголовки будут меньше, чем текст, который они возглавляют:

Default font sizes from h1 to h6 in relation to paragraph font size

(размер шрифта основного текста по умолчанию выше 14px)

Это кажется нелогичным: заголовки должны рисовать глаз и задавать начало раздела, а размер шрифта является важной визуальной подсказкой. Есть ли причина, по которой размеры шрифтов по умолчанию делают эти заголовки меньше, чем текст под ними?

Ответы [ 3 ]

29 голосов
/ 16 апреля 2019

Я искал в списках рассылки W3C , но не нашел никаких обсуждений по этому решению.

Вот что я могу сделать вывод:

1995

Первая опубликованная версия спецификации HTML (до появления CSS) фактически указала , что h4 и h5 должны иметь размер "нормального шрифта".Размер шрифта для h6 не был указан явно, но я бы предположил, что это был также нормальный размер шрифта.

H3
         Italic, large font, slightly indented from the left
         margin. One or two blank lines above and below.

H4
         Bold, normal font, indented more than H3. One blank line
         above and below.

H5
         Italic, normal font, indented as H4. One blank line
         above.

H6
         Bold, indented same as normal text, more than H5. One
         blank line above.

1996

CSS сломалсяна сцену.Или действительно, хромал на сцену и сломался .Первая рекомендуемая таблица стилей по умолчанию для браузеров указана только :

H1 { font-size: xx-large }
H2 { font-size: x-large }
H3 { font-size: large }

h4 до h6, таким образом, будет 1em.

1997

HTML 3.2 отбросил все рекомендации по размеру шрифта относительно текста документа, только рекомендует :

Более важные заголовки обычно отображаются более крупным шрифтомчем менее важные.

Это немного противоречит CSS1, но в то время они не были неотъемлемыми.Большая часть стилей по-прежнему выполнялась с помощью встроенных атрибутов HTML, которые по-прежнему очень не устарели.

1998

CSS2 вышел, и он удалил таблицу стилей по умолчанию из собственной спецификации, и вместо этого связан с новой типовой таблицей стилей для HTML 4.0 в спецификации HTML .

Это источник заголовков, явно заданный меньшимчем 1em, по крайней мере, насколько я могу судить.Рекомендуемая таблица стилей HTML 4.0 задает значения, которые большинство браузеров сохраняют до сегодняшнего дня как значения по умолчанию:

H5              { font-size: .83em; line-height: 1.17em; margin: 1.67em 0 }
H6              { font-size: .67em; margin: 2.33em 0 }

Как и вы, я бы полюбил допрочитайте некоторые дебаты или дискуссии в это время.Это не было случайным решением: значение меньше 1em намеренно и конкретно делает текст меньше его контекста.

Я буду продолжать искать, и вы тоже должны!

15 голосов
/ 05 июня 2019

Ох, цифровая археология!

Итак, вы можете проследить это до стандартных стилей (не совсем CSS!) Internet Explorer 3-4 и Netscape Navigator 3-4.Более конкретно, они, вероятно, взяты из IE4pp2, но представлены в IE3.То, как IE / Microsoft определились с этими значениями, к сожалению, потеряно в песках времени (по крайней мере, публично - оно вполне может быть доступно во внутренних почтовых архивах Microsoft ... кто-нибудь знает сотрудника MS?).

Я пытался восстановить цепь ниже.


Как уже упоминал Джейкоб, самый ранний проект *1009* CSS2 от ноября 1997 года включает образец таблицы стилей , который определяет h5 как .83em и h6как .67em.Он также отмечает:

Базовая таблица стилей описывает типичный рендеринг всех элементов HTML 4.0 [HTML40]) визуальных UA.Таблица стилей основана на обширном исследовании того, как нынешние UA отображают HTML, и разработчикам рекомендуется использовать его в качестве таблицы стилей по умолчанию в своих реализациях.


Копая немного дальше, мы можем найти "базовую таблицу стилей" с теми же значениями, которая отмечает:

Я разработалобразец таблицы стилей для черновика W3C CSS2, но редакционная разработка материалов в этом месте не имеет официального статуса W3C.

...

Базовая таблица стилей описывает «согласованное по умолчанию» отображение всех элементов HTML 4.0 в производных от Mosaic веб-браузерах (Netscape Navigator и Microsoft Internet Explorer),Он предназначен в качестве основы для редактирования или «каскадирования» других модулей таблиц стилей, информативной справочной информации, (неофициального) дополнения к спецификации HTML 4.0, упражнения по архитектуре таблиц стилей и инструмента тестирования браузера.Базовая таблица стилей фиксирует статус-кво, чтобы выйти за его пределы.

Мы можем дополнительно отследить эту базовую таблицу стилей до списка рассылки www-style.


Возможно, интересен тот факт, что примерно в это же время W3C одобрил набор "Базовых таблиц стилей" , предназначенных (?), Чтобы стать лучшедефолт.Эти таблицы стилей ( теперь доступны через Интернет-архив ) действительно используют большие значения для всех заголовков , в результате чего h6 в 1em и h5 в 1.17em.К сожалению, кажется, что этот набор таблиц стилей так и не появился, поэтому у нас остаются странно маленькие h5 и h6.

0 голосов
/ 15 апреля 2019

Нет, это просто размер шрифта по умолчанию.Обычно вы редактируете заголовок с помощью файла CSS, в котором вы можете выбрать любой размер шрифта.

...