Я уже некоторое время задавался вопросом об этих вопросах и создавал версию пикселя и версию em для сравнения различий при увеличении - их не было. Большинство из того, что я прочитал, гласит: «вам нужно сделать их ems для масштабируемости», но я думаю, что сейчас спорный момент, когда все современные браузеры масштабируются правильно. Пока вы устанавливаете базовый размер шрифта в CSS на ems/rems, заполнение и поля, написанные в пикселях, будут масштабироваться соответственно, как если бы они были ems. Я что-то упускаю?Зачем использовать ems для заполнения и полей с правильной масштабированием браузеров?
ответ
Единицы измерения EM (и др.) Не предназначены для масштабирования порт обзора - они относятся к текущему размеру шрифта. Они созданы так, что если я сделаю свой шрифт очень большим (потому что мои глаза плохие) или очень маленькие (потому что я молод и имею глаза орла), я хочу, чтобы белое пространство вокруг текста масштабировалось с помощью текст. Как правило, не требуется 20-pt-текст с 5-кратным полем между абзацами и 10-pt-текстом с краем 50 пикселей.
Например, один хочет текст с приблизительно N линии пробела между абзацами. Использование N em вертикальные поля достигают интервала, который приспосабливается к фактическому размеру шрифта.
В современной сети, em (и др.) Устройства все еще имеют свое место; но они не для всего. По сути, вы должны спросить себя: «если этот размер изменится с помощью шрифта?»
Кроме того, что, если вы решите изменить размер шрифта вашего тела? Из этого размера тела-текста вытекает много других значений макета. Скажем, вы решили, что размер просмотра браузера по умолчанию 16pt-18pt имеет больше смысла, чем размер 10pt, который вы сейчас используете. Если вы установили соответствующие вещи с помощью ems, тогда, когда вы увеличиваете базу, все остальное увеличивается пропорционально ей.
Я до сих пор не вижу реальной выгоды от использования ems в настоящее время. Пример используемого поля 5 пикселей, который вы использовали, будет масштабироваться пропорционально тексту, точно так же, как ems будет в браузере. Это похоже на то, что вы просто делаете для более простого и удобного обслуживания вашего CSS. Благодарю за ваш ответ. – user3207937
@ user3207937: только при масштабировании браузера; он не будет, если пользователь изменит свой сконфигурированный размер шрифта и/или использует таблицы стилей, чтобы изменить любой размер шрифта, который вы установили на странице. –
Можете ли вы показать нам свои версии? – DaniP
Вопрос, помимо того, что он слишком допотопный и частично спекулятивный, основан на некоторых некорректных предпосылках, таких как предполагаемая фиксированная связь между «em» и пикселями и не делая различия между масштабированием и изменением размера шрифта. –