CSS: 100% размер шрифта-100% чего?
здесь многостатьи и вопросы о процентный размер против другого размера шрифты. Однако я не могу узнать, что такое ссылка на процентное значение. Я понимаю, что это тот же размер во всех браузерах. Я тоже читал это, например:
процент ( % ): процентная единица очень похожа на единицу "em", за исключением нескольких фундаментальных различий. Прежде всего, текущий размер шрифта равен 100% (т. е. 12pt = 100%). При использовании единицы процента ваш текст остается полностью масштабируемым для мобильных устройств и для доступа.
Источник:http://kyleschaeffer.com/best-practices/css-font-size-em-vs-px-vs-pt-vs/
но если вы говорите " ie 12 pt = 100%", то это означает, что вы сначала должны определить font-size: 12pt
. Так вот как это работает? Вы сначала определяете размер в абсолютной мере, а затем ссылаетесь на это как " 100%"? Не имеет большого смысла, как многие образцы говорят, что полезно поставить:
body {
font-size: 100%;
}
делая это, что - размер шрифта относительно? Я замечаю, что размер, который я вижу на экране, отличается для каждого шрифта. Например, Ариал выглядит намного больше, чем Times New Roman. Кроме того, если бы я просто сделал это, размер тела = 100%, был бы это означает, что это будет то же самое на всех браузерах? Или только если я сначала определю абсолютное значение?
ОБНОВЛЕНИЕ, СБ ИЮЛЬ 23
я добираюсь туда, но, пожалуйста, потерпите меня.
Итак, значение % относится к размеру шрифта браузера по умолчанию, если я правильно понимаю. Ну, это хорошо, но дает мне еще несколько других вопросов:
- это стандартный размер всегда одинаковый для каждой версии браузера, или они различаются между версиями?
- я ! нашел (см. рисунок ниже) настройки для Google Chrome (никогда не смотрел на это раньше!), и я вижу стандарт "засечки"," без засечек "и" моноширинные " настройки. Но как я могу интерпретировать это для других шрифтов? Скажем, я определяю
font: 100% Georgia;
, какой размер взять браузер? Будет ли он искать стандартный размер для засечек, или шрифт "Грузия" имеет стандартный размер для браузера - на нескольких сайтах я читать такие вещи, как
Sizing text and line-height in ems, with a percentage specified on the body [..], was shown to provide **accurate, resizable text across all browsers** in common use today
. Но из того, что я сейчас изучаю, я считаю, что вы должны выбрать либо изменяемый размер текста (используя % или em, как то, что они рекомендуют в этой цитате), либо имея "точные, согласованные размеры шрифтов в разных браузерах" (используя px или pt в качестве базы). Это правильно?
Настройки Google:
вот как я думаю вещи может похоже, если вы не определяете размер в абсолютных значениях.
9 ответов:
браузер по умолчанию, который является чем-то вроде 16pt для Firefox, вы можете проверить, перейдя в параметры Firefox, нажав на вкладку содержимое и проверив размер шрифта. Вы можете сделать то же самое и для других браузеров.
мне лично нравится контролировать размер шрифта по умолчанию на моих сайтах, поэтому в файле CSS, который включен в каждую страницу, Я установлю тело по умолчанию, например:
body { font-family: Helvetica, Arial, sans-serif; font-size: 14px }
теперь размер шрифта всех моих HTML-тегов будет наследовать размер шрифта 14px.
скажите, что я хочу, чтобы все дивы имели размер шрифта на 10% больше, чем тело, я просто делаю:
div { font-size: 110% }
теперь любой браузер, который просматривает мои страницы, автоматически сделает все divs на 10% больше, чем у тела, что должно быть примерно 15.4 px.
если я хочу, чтобы размер шрифта всех div был на 10% меньше, я делаю:
div { font-size: 90% }
это сделает все дивы имеют размер шрифта 12.6 px.
также вы должны знать, что, поскольку размер шрифта унаследовано, что каждый вложенный div уменьшит размер шрифта на 10%, поэтому:
<div>Outer DIV. <div>Inner DIV</div> </div>
внутренний div будет иметь размер шрифта 11.34 px (90% от 12.6 px), который, возможно, не был предназначен.
это может помочь в объяснении: http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#value-def-percentage
Я понимаю, что когда шрифт установлен следующим образом
body { font-size: 100%; }
браузер будет отображать шрифт в соответствии с настройками пользователя для этого браузера.
спецификация говорит, что % отображается
относительно размера шрифта родительского элемента
http://www.w3.org/TR/CSS1/#font-size
в этом случае я понимаю, что это означает, что браузер настроен.
процент в значении
font-size
собственность является по отношению к размер шрифта родительского элемента. CSS 2.1 говорит об этом неясно и путано (ссылаясь на "унаследованный размер шрифта"), но CSS3 Text говорит это очень четко.родитель
body
элемент является корневым элементом, т. е.html
элемент. Если не задано в таблице стилей, размер шрифта корневого элемента зависит от реализации. Это обычно зависит от пользователя настройки.задание
font-size: 100%
бессмысленно во многих случаях, поскольку элемент наследует размер шрифта своего родителя (что приводит к тому же результату), если ни одна таблица стилей не устанавливает свой собственный размер шрифта. Однако может быть полезно переопределить параметры в других таблицах стилей (включая таблицы стилей браузера по умолчанию).например,
input
элемент обычно имеет настройки в таблице стилей браузера, что делает его размер шрифта по умолчанию меньше, чем размер текста копирования. Если вы хотите сделать размер шрифта то же самое, вы можете установитьinput { font-size: 100% }
на
body
элемент, логически избыточный параметрfont-size: 100%
используется довольно часто, как считается, чтобы помочь против некоторых ошибок браузера (в браузерах, которые, вероятно, потеряли свое значение в настоящее время).
Это относительно размера шрифта браузера по умолчанию, если вы не переопределите его значением в pt или px.
Извините, если я опоздал на вечеринку, но в вашем редактировании вы делаете замечание о
font: 100% Georgia
, на который другие ответы не ответили.есть разница между
font: 100% Georgia
иfont-size:100%; font-family:'Georgia'
. Если бы это было все, что делал метод стенографии, часть размера шрифта была бы бессмысленной. Но он также устанавливает множество свойств для их значений по умолчанию: высота линии становитсяnormal
(или около 1,2), то же самое для стиля (не курсив) и веса (не полужирный).вот и все. Другой ответы уже упоминали все остальное, что можно было упомянуть.
как вы убедительно показали, то
font-size: 100%;
не будет отображаться одинаково во всех браузерах. Тем не менее, вы установите свой шрифт в свой CSS-файл, так что это будет то же самое (или запасной вариант) во всех браузерах.Я считаю
font-size: 100%;
может быть очень полезно при объединении его сem
-ориентированного проектирования. Как в этой статье показывает, что это создаст очень гибкий веб-сайт.когда это полезно? Когда ваш сайт должен адаптироваться к пожеланиям посетителей. Взять для примера пожилой человек, который ставит свой размер шрифта по умолчанию в 24 px. Или кто-то с маленьким экраном с большим разрешением, который увеличивает его размер шрифта по умолчанию, потому что в противном случае он должен щуриться. Большинство сайтов сломались бы, но сайты на основе em способны справиться с этими ситуациями.
относительно размера по умолчанию, определенного для этого шрифта.
Если кто-то открывает вашу страницу в веб-браузере, там есть и размер шрифта по умолчанию он использует.
Как я понимаю, это поможет вашему контенту настроить различные значения семейства шрифтов и размеров шрифтов.Таким образом, ваш контент становится масштабируемым. Что касается вопроса о принадлежности размер шрифта мы всегда можем переопределить путем предоставления определенной размер шрифта для элемента.
по данным ВСЕ ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ, НАЧИНАЯ С 1996 ГОДА, процентные значения на
font-size
обратитесь к родительскому элементу (компьютерной) размер шрифта.<style> div { font-size: 16px; } span { font-size: 75%; } </style> <div><span>this font size is 12px!</span></div>
это так просто.
, что если
div
объявляет относительный размер шрифта, какem
S, или еще хуже, другой процент?? Смотрите "вычисленный" выше. К какой бы абсолютной единице относительная единица ни была преобразована.единственный вопрос, который остается то, что происходит при использовании процентного значения для корневого элемента, который не имеет родителя:
html { font-size: 62.5%; /* 62.5% of what? */ }
в таком случае смотрите "создать дубликат" этого вопроса. TLDR: проценты в корневом элементе относятся к размеру шрифта браузера по умолчанию, который может отличаться для каждого пользователя.
ссылки: