Размер шрифта CSS: относительные и абсолютные значения. Какой использовать? [закрыто]

Посмотрите на этот вопрос:

Использование Android-планшета в качестве MQTT-сервера

TLDR;

Возможно , посмотрите на чистый Java-брокер, такой как HiveMQ.

29
задан Aron Rotteveel 6 February 2009 в 16:17
поделиться

11 ответов

, Чтобы использовать?

Оба. Родственник для текста основной части, из которого пользователи оказываются перед необходимостью читать много из (таким образом, они захотят смочь считать его удобно); Абсолютный для текста, который должен быть измерен для соответствия другим элементам на странице, которые измерены в пикселях, таких как изображения.

Для родственника, †˜ % ’ и ‘em’ одинаково хороши.

Для абсолюта, всегда используйте ‘px’. Никогда не используйте ‘pt’ для экранного использования, это только разумно для таблиц стилей печати. Жаль, что ‘pt’ считают единицей по умолчанию для обработки шрифта, потому что в сети это - худший выбор.

(ETA: Обратите внимание, что начиная с этого ответа, CSS3 имеет , переопределил ‘physical units’ так, чтобы px и pt были всегда пропорциональны. Таким образом, эта проблема больше не имеет значения, если Вы не обеспокоены очень старыми браузерами.)

Некоторым людям не нравится ‘compounding’ эффект относительных размеров шрифта. Прием, действительно, должен использовать так мало изменений размера шрифта, как Вы можете, для предотвращения слишком многих вложений. Это должно быть возможным получить relative-to-user's-preferred-size поведение без поведения соединения при помощи ключевых слов размера шрифта ‘small’/‘medium’/‘xx-large’/etc., но к сожалению тот способ, которым Вы не получаете много гранулярности, и существует все еще даже сегодня различия между тем, как браузеры обрабатывают их.

28
ответ дан bobince 6 February 2009 в 16:17
поделиться
  • 1
    Прохладный. What' s различие между свойствами InnerText и InnerHtml? Я должен просто использовать InnerHtml? – James 15 April 2011 в 10:25

Я сохраняю размер шрифта как выбранное значение по умолчанию пользователя, затем использую относительную калибровку:

body {
    font-size: 100%;
}

p {
    font-size: 1em;
}

h1 {
    font-size: 1.8em;
}

Этот метод уважает выбор пользователем размера шрифта в их браузере, который обычно настраивается к 16 пкс.

22
ответ дан Philip Morton 6 February 2009 в 16:17
поделиться
  • 1
    Я чувствую себя немного глупым здесь, но Панель hasn' t получил свойство Text/InnerHtml. Как я могу записать непосредственно в него, как с Маркировкой? – James 15 April 2011 в 10:02

Лично я установил абсолютный размер шрифта на body и оттуда установил все как относительно этого. например:

body {
    font-size: 10px;    /* or pt if you want */
}
h1 {
    font-size: 200%;
}

Просто стараются не комбинировать составленные относительные размеры:

body {
    font-size: 10px;
}
p {
    font-size: 80%; /* 8px, right? */
}
div {
    font-size: 150%;
}
/* what size is a "div > p" ? */

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

преимущество для этого метода - то, что можно легко оценить или вниз весь текст путем изменения одного определения.

оборотная сторона - то, что, если бы Вы хотите изменить размер стандартного шрифта, но не заголовки (например), затем было бы много объявлений для изменения.

10
ответ дан nickf 6 February 2009 в 16:17
поделиться
  • 1
    Вы добавляете Средства управления к нему - it' s контейнер. Например, myPanel.Controls.Add(new LiteralControl("Hello World")); – Widor 15 April 2011 в 10:04

Я предпочитаю относительные значения начиная с Internet Explorer (< 7?) не может масштабировать абсолютные или пиксельные значения.

4
ответ дан Gumbo 6 February 2009 в 16:17
поделиться

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

5
ответ дан Alex 6 February 2009 в 16:17
поделиться

Если Вы используете абсолютные размеры затем, любым слабовидящим читателям могло бы быть трудно читать. При использовании относительных размеров затем, Вы просто указываете, какой текст больше / меньший, чем другой текст на Вашей странице, всех относительно размера текста пользователя по умолчанию, который мог бы быть большим (если повреждено) или крошечным (если немного странный).

недостаток А измеренного текста родственника - когда Вы хотите, чтобы Ваш веб-сайт был фиксированными размерами, но если возможный необходимо действительно пойти с более жидким дизайном так или иначе так, чтобы страница изменила размер для размещения ее содержания.

2
ответ дан Peter Morris 6 February 2009 в 16:17
поделиться
  • 1
    Спасибо @Widor. Я мог поместить управление asp:Literal непосредственно на страницу, или это получило недостатки? – James 15 April 2011 в 10:16

Одна вещь, которую я видел, что люди используют, состоит в том, чтобы определить основной размер шрифта в теле CSS (например, 12 ПБ), и затем все другие размеры шрифта являются процентами того (например, 140% для заголовков, 80% для маленького, и т.д.).

при использовании pt затем, Вы разойдетесь во мнениях в дисплее, основанном на наборе пользователя DPI, но он будет находиться под контролем пользователя, возможно.

при использовании пкс затем, у Вас будут проблемы на очень высоких устройствах DPI.

Эм и pt хороши для CSS для печати.

существует много из, делают это и видят то, что происходит о шрифтах и CSS.

2
ответ дан JeeBee 6 February 2009 в 16:17
поделиться
  • 1
    @James Widor ответил на Ваш второй вопрос!:) – Matías Fidemraizer 15 April 2011 в 10:09

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

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

браузеры Certain имеют проблемы, изменяющие размер фиксированных типов размера шрифта (пкс и pt), и поэтому имеют тенденцию не быть очень хорошими для веб-шрифта, поскольку некоторые пользователи, возможно, должны увеличить размер Вашего шрифта с помощью экранного усилителя или просто колеса мыши.

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

В моем уме, успокаивая разработчиков, которые должны знать лучше, недостаточно причины когда-либо использовать фиксированные шрифты в веб-разработке.

2
ответ дан Steerpike 6 February 2009 в 16:17
поделиться
  • 1
    @Rberteig: whay делают Вы используете выбор (" #"...) вместо просто #arg? – AlexStack 23 August 2011 в 07:41

Используя EM масштабирование более универсально со шрифтами. Это также более доступно.

, Если Вы не работали с этим прежде, инструмент как , Калькулятор Эма может быть очень полезен для понимания, как тег/модель работает.

2
ответ дан Syntax 6 February 2009 в 16:17
поделиться
  • 1
    Да, можно добавить Элемент управления литерал (или любые другие) в разметке, если Вы любите и просто присваиваете Text свойство, если Вы хотите, чтобы он обновил динамично во времени выполнения. – Widor 15 April 2011 в 10:23

Используя относительные размеры заставит Вашу страницу выглядеть лучше на мобильных устройствах, таких как iPhone, тем более, что они представляют страницу на большей области просмотра, затем уменьшают масштаб его для помещений в необходимое пространство.

1
ответ дан Abdullah Jibaly 6 February 2009 в 16:17
поделиться
  • 1
    Если Вы don' t имеют доступ к io библиотека, почему у Вас был бы доступ к print? – Nicol Bolas 23 August 2011 в 02:50

Большая часть моего образования программирования является настольными приложениями, но я читал изрядное количество для веб-разработки недавно, и книги, с которыми я столкнулся, предлагают использовать спецификацию размера шрифта ключевого слова (маленький, средний, и т.д.) и затем увеличить масштаб этого или вниз процентом или ими.

, Если Ваш размер шрифта указан в пкс, пользователи старых версий IE не смогут переопределить размер текста, т.е. они не смогут сделать его больше или меньшим для удовлетворения их предпочтениям.

Однако IE5 также создает проблему, когда Ваш размер шрифта указан ключевым словом: относительно других браузеров IE5 отображает текст об одном больше шаге.

0
ответ дан Safran Ali 6 February 2009 в 16:17
поделиться
  • 1
    пересмотрите свой ответ, поскольку Вы очень неправы. API, представленный TCP, является в значительной степени потоком с байтом, заказанным доставку. Вы обращаетесь здесь к методу базовой передачи (т.е. пакеты), которые, как конечно, гарантируют, не прибудут в порядок. – jldupont 6 November 2009 в 23:32