Ð ÑÑом оÑеÑке Ñ Ð¿Ð¾ÑÑаÑаÑÑÑ Ð½Ðµ ÑолÑко ÑаÑÑказаÑÑ Ð¾ ÑазлиÑнÑÑ ÐµÐ´Ð¸Ð½Ð¸ÑÐ°Ñ Ð¸Ð·Ð¼ÐµÑениÑ, но и поÑÑÑоиÑÑ Ð¾Ð±ÑÑÑ ÐºÐ°ÑÑÐ¸Ð½Ñ â ÑÑо и когда вÑбиÑаÑÑ.
ÐикÑели: px
ÐикÑÐµÐ»Ñ px â ÑÑо ÑÐ°Ð¼Ð°Ñ Ð±Ð°Ð·Ð¾Ð²Ð°Ñ, абÑолÑÑÐ½Ð°Ñ Ð¸ оконÑаÑелÑÐ½Ð°Ñ ÐµÐ´Ð¸Ð½Ð¸Ñа измеÑениÑ.
ÐолиÑеÑÑво пикÑелей задаÑÑÑÑ Ð² наÑÑÑойкаÑ
ÑазÑеÑÐµÐ½Ð¸Ñ ÑкÑана, один px â ÑÑо как Ñаз один Ñакой пикÑÐµÐ»Ñ Ð½Ð° ÑкÑане. ÐÑе знаÑÐµÐ½Ð¸Ñ Ð±ÑаÑÐ·ÐµÑ Ð² иÑоге пеÑеÑÑиÑÐ°ÐµÑ Ð² пикÑели.
ÐикÑели могÑÑ Ð±ÑÑÑ Ð´ÑобнÑми, напÑÐ¸Ð¼ÐµÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¼Ð¾Ð¶Ð½Ð¾ задаÑÑ Ð² 16.5px. ÐÑо ÑовеÑÑенно ноÑмалÑно, бÑаÑÐ·ÐµÑ Ñам иÑполÑзÑÐµÑ Ð´ÑобнÑе пикÑели Ð´Ð»Ñ Ð²Ð½ÑÑÑенниÑ
вÑÑиÑлений. РпÑимеÑÑ, еÑÑÑ ÑÐ»ÐµÐ¼ÐµÐ½Ñ ÑиÑиной в 100px, его нÑжно ÑазделиÑÑ Ð½Ð° ÑÑи ÑаÑÑи â волей-неволей поÑвлÑÑÑÑÑ 33.333...px. ÐÑи оконÑаÑелÑном оÑобÑажении дÑобнÑе пикÑели, конеÑно же, окÑÑглÑÑÑÑÑ Ð¸ ÑÑановÑÑÑÑ ÑелÑми.
ÐÐ»Ñ Ð¼Ð¾Ð±Ð¸Ð»ÑнÑÑ ÑÑÑÑойÑÑв, Ñ ÐºÐ¾ÑоÑÑÑ Ð¼Ð½Ð¾Ð³Ð¾ пикÑелей на ÑкÑане, но Ñам ÑкÑан маленÑкий, ÑÑÐ¾Ð±Ñ Ð¾Ð±ÐµÑпеÑиÑÑ ÑиÑаемоÑÑÑ, бÑаÑÐ·ÐµÑ Ð°Ð²ÑомаÑиÑеÑки пÑименÑÐµÑ Ð¼Ð°ÑÑÑабиÑование.
- Ðлавное доÑÑоинÑÑво пикÑÐµÐ»Ñ â ÑÑÑкоÑÑÑ Ð¸ понÑÑноÑÑÑ
- ÐÑÑгие единиÑÑ Ð¸Ð·Ð¼ÐµÑÐµÐ½Ð¸Ñ â в некоÑоÑом ÑмÑÑле «моÑнее», они ÑвлÑÑÑÑÑ Ð¾ÑноÑиÑелÑнÑми и позволÑÑÑ ÑÑÑанавливаÑÑ ÑооÑноÑÐµÐ½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ ÑазлиÑнÑми ÑазмеÑами
mm, cm, pt, pcСÑÑеÑÑвÑÑÑ Ñакже «пÑоизводнÑе» Ð¾Ñ Ð¿Ð¸ÐºÑÐµÐ»Ñ ÐµÐ´Ð¸Ð½Ð¸ÑÑ Ð¸Ð·Ð¼ÐµÑениÑ: mm, cm, pt и pc, но они давно оÑпÑавилиÑÑ Ð½Ð° ÑÐ²Ð°Ð»ÐºÑ Ð¸ÑÑоÑии.
ÐоÑ, еÑли инÑеÑеÑно, Ð¸Ñ Ð·Ð½Ð°ÑениÑ:
1mm(мм) =3.8px1cm(Ñм) =38px1pt(ÑипогÑаÑÑкий пÑнкÑ) =4/3 px1pc(ÑипогÑаÑÑÐºÐ°Ñ Ð¿Ð¸ÐºÐ°) =16px
Так как бÑаÑÐ·ÐµÑ Ð¿ÐµÑеÑÑиÑÑÐ²Ð°ÐµÑ ÑÑи знаÑÐµÐ½Ð¸Ñ Ð² пикÑели, Ñо ÑмÑÑла в Ð¸Ñ ÑпоÑÑеблении неÑ.
cm ÑодеÑжиÑÑÑ Ñовно 38 пикÑелей?Ð ÑеалÑной жизни ÑанÑимеÑÑ â ÑÑо ÑÑалон длинÑ, одна ÑоÑÐ°Ñ Ð¼ÐµÑÑа. РпикÑÐµÐ»Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑазнÑм, в завиÑимоÑÑи Ð¾Ñ ÑкÑана.
Ðо в ÑоÑмÑÐ»Ð°Ñ Ð²ÑÑе под пикÑелем понимаеÑÑÑ Â«ÑÑеÑиÑеÑкий пикÑÐµÐ»Ñ Ð² вакÑÑме», ÑоÑка на «ÑÑандаÑÑизованном ÑкÑане», Ñ Ð°ÑакÑеÑиÑÑики коÑоÑого опиÑÐ°Ð½Ñ Ð² ÑпеÑиÑикаÑии.
ÐоÑÑÐ¾Ð¼Ñ Ð½Ð¸ о каком ÑооÑвеÑÑÑвии cm ÑеалÑÐ½Ð¾Ð¼Ñ ÑанÑимеÑÑÑ Ð·Ð´ÐµÑÑ Ð½ÐµÑ Ð¸ ÑеÑи. ÐÑо полноÑÑÑÑ ÑинÑеÑиÑеÑÐºÐ°Ñ Ð¸ пÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð½Ð°Ñ ÐµÐ´Ð¸Ð½Ð¸Ñа измеÑениÑ, коÑоÑÐ°Ñ Ð½Ðµ нÑжна.
ÐÑноÑиÑелÑно ÑÑиÑÑа: em
1em â ÑекÑÑий ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа.
Ðожно бÑаÑÑ Ð»ÑбÑе пÑопоÑÑии Ð¾Ñ ÑекÑÑего ÑÑиÑÑа: 2em, 0.5em и Ñ.п.
РазмеÑÑ Ð² em â оÑноÑиÑелÑнÑе, они опÑеделÑÑÑÑÑ Ð¿Ð¾ ÑекÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑекÑÑÑ.
ÐапÑимеÑ, давайÑе ÑÑавним px Ñ em на Ñаком пÑимеÑе:
<div style="font-size:24px">
СÑÑаÑÑÑ
<div style="font-size:24px">ÐивÑÑ Ñакже в ÐÑÑике</div>
</div>
24 пикÑелей â и в ÐÑÑике 24 пикÑелей, поÑÑÐ¾Ð¼Ñ ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа в <div> одинаков.
Ð Ð²Ð¾Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¸ÑнÑй пÑÐ¸Ð¼ÐµÑ Ñ em вмеÑÑо px:
<div style="font-size:1.5em">
СÑÑаÑÑÑ
<div style="font-size:1.5em">ÐивÑÑ Ñакже в ÐÑÑике</div>
</div>
Так как знаÑение в em вÑÑÑиÑÑваеÑÑÑ Ð¾ÑноÑиÑелÑно ÑекÑÑего ÑÑиÑÑа, Ñо Ð²Ð»Ð¾Ð¶ÐµÐ½Ð½Ð°Ñ ÑÑÑока в 1.5 Ñаза болÑÑе, Ñем пеÑваÑ.
ÐÑÑ
одиÑ, ÑазмеÑÑ, заданнÑе в em, бÑдÑÑ ÑменÑÑаÑÑÑÑ Ð¸Ð»Ð¸ ÑвелиÑиваÑÑÑÑ Ð²Ð¼ÐµÑÑе Ñо ÑÑиÑÑом. С ÑÑÑÑом Ñого, ÑÑо ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа обÑÑно опÑеделÑеÑÑÑ Ð² ÑодиÑеле, и Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñн Ñовно в одном меÑÑе, ÑÑо бÑÐ²Ð°ÐµÑ Ð¾ÑÐµÐ½Ñ Ñдобно.
ЧÑо Ñакое «ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа»? ÐÑо вовÑе не «ÑÐ°Ð·Ð¼ÐµÑ Ñамой болÑÑой бÑÐºÐ²Ñ Ð² нÑм», как можно бÑло Ð±Ñ Ð¿Ð¾Ð´ÑмаÑÑ.
Ð Ð°Ð·Ð¼ÐµÑ ÑÑиÑÑа â ÑÑо некоÑоÑÐ°Ñ Â«ÑÑÐ»Ð¾Ð²Ð½Ð°Ñ ÐµÐ´Ð¸Ð½Ð¸Ñа», коÑоÑÐ°Ñ Ð²ÑÑÑоена в ÑÑиÑÑ.
Ðна обÑÑно ÑÑÑÑ Ð±Ð¾Ð»ÑÑе, Ñем ÑаÑÑÑоÑние Ð¾Ñ Ð²ÐµÑÑ
а Ñамой болÑÑой бÑÐºÐ²Ñ Ð´Ð¾ низа Ñамой маленÑкой. То еÑÑÑ, пÑедполагаеÑÑÑ, ÑÑо в ÑÑÑ Ð²ÑÑоÑÑ Ð¿Ð¾Ð¼ÐµÑаеÑÑÑ Ð»ÑÐ±Ð°Ñ Ð±Ñква или иÑ
ÑоÑеÑание. Ðо пÑи ÑÑом «Ñ
воÑÑÑ» бÑкв, ÑакиÑ
как Ñ, g могÑÑ Ð·Ð°Ñ
одиÑÑ Ð·Ð° ÑÑо знаÑение, Ñо еÑÑÑ Ð²ÑлезаÑÑ ÑнизÑ. ÐоÑÑÐ¾Ð¼Ñ Ð¾Ð±ÑÑно вÑÑоÑÑ ÑÑÑоки делаÑÑ ÑÑÑÑ Ð±Ð¾Ð»ÑÑе, Ñем ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа.
ex и chÐ ÑпеÑиÑикаÑии ÑÐºÐ°Ð·Ð°Ð½Ñ Ñакже единиÑÑ ex и ch, коÑоÑÑе ознаÑаÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ñимвола "x" и ÑÐ°Ð·Ð¼ÐµÑ Ñимвола "0".
ÐÑи ÑазмеÑÑ Ð¿ÑиÑÑÑÑÑвÑÑÑ Ð² ÑÑиÑÑе вÑегда, даже еÑли по ÐºÐ¾Ð´Ñ ÑÑиÑ
Ñимволов в ÑÑиÑÑе наÑ
одÑÑÑÑ Ð´ÑÑгие знаÑениÑ, а не именно бÑква "x" и Ð½Ð¾Ð»Ñ "0". Ð ÑÑом ÑлÑÑае они ноÑÑÑ Ð±Ð¾Ð»ÐµÐµ ÑÑловнÑй Ñ
аÑакÑеÑ.
ÐÑи единиÑÑ Ð¸ÑполÑзÑÑÑÑÑ ÑÑезвÑÑайно Ñедко, Ñак как «ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа» em обÑÑно вполне подÑ
одиÑ.
ÐÑоÑенÑÑ %
ÐÑоÑенÑÑ %, как и em â оÑноÑиÑелÑнÑе единиÑÑ.
Ðогда Ð¼Ñ Ð³Ð¾Ð²Ð¾Ñим «пÑоÑенÑ», Ñо Ð²Ð¾Ð·Ð½Ð¸ÐºÐ°ÐµÑ Ð²Ð¾Ð¿ÑÐ¾Ñ â «ÐÑоÑÐµÐ½Ñ Ð¾Ñ Ñего?»
Ðак пÑавило, пÑоÑÐµÐ½Ñ Ð±ÑÐ´ÐµÑ Ð¾Ñ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ ÑвойÑÑва ÑодиÑÐµÐ»Ñ Ñ Ñем же названием, но не вÑегда.
ÐÑо оÑÐµÐ½Ñ Ð²Ð°Ð¶Ð½Ð°Ñ Ð¾ÑобенноÑÑÑ Ð¿ÑоÑенÑов, пÑо коÑоÑÑÑ, ÑвÑ, ÑаÑÑо забÑваÑÑ.
ÐÑлиÑнÑй иÑÑоÑник инÑоÑмаÑии по ÑÑой Ñеме â ÑÑандаÑÑ, Visual formatting model details.
ÐÐ¾Ñ Ð¿ÑÐ¸Ð¼ÐµÑ Ñ %, он вÑглÑÐ´Ð¸Ñ Ð² ÑоÑноÑÑи Ñак же, как Ñ em:
<div style="font-size:150%">
СÑÑаÑÑÑ
<div style="font-size:150%">ÐивÑÑ Ñакже в ÐÑÑике</div>
</div>
РпÑимеÑе вÑÑе пÑоÑÐµÐ½Ñ Ð±ÐµÑÑÑÑÑ Ð¾Ñ ÑазмеÑа ÑÑиÑÑа ÑодиÑелÑ.
Ð Ð²Ð¾Ñ Ð¿ÑимеÑÑ-иÑклÑÑениÑ, в коÑоÑÑÑ
% беÑÑÑÑÑ Ð½Ðµ Ñак:
margin-left- ÐÑи ÑÑÑановке ÑвойÑÑва
margin-leftв%, пÑоÑÐµÐ½Ñ Ð±ÐµÑÑÑÑÑ Ð¾Ñ ÑиÑÐ¸Ð½Ñ ÑодиÑелÑÑкого блока, а вовÑе не Ð¾Ñ ÐµÐ³Ð¾margin-left. line-height- ÐÑи ÑÑÑановке ÑвойÑÑва
line-heightв%, пÑоÑÐµÐ½Ñ Ð±ÐµÑÑÑÑÑ Ð¾Ñ ÑекÑÑего ÑазмеÑа ÑÑиÑÑа, а вовÑе не оÑline-heightÑодиÑелÑ. ÐеÑали поline-heightи ÑазмеÑÑ ÑÑиÑÑа Ð²Ñ Ñакже можеÑе найÑи в ÑÑаÑÑе СвойÑÑва font-size и line-height. width/height- ÐлÑ
width/heightобÑÑно пÑоÑÐµÐ½Ñ Ð¾Ñ ÑиÑинÑ/вÑÑоÑÑ ÑодиÑелÑ, но пÑиposition:fixed, пÑоÑÐµÐ½Ñ Ð±ÐµÑÑÑÑÑ Ð¾Ñ ÑиÑинÑ/вÑÑоÑÑ Ð¾ÐºÐ½Ð° (а не ÑодиÑÐµÐ»Ñ Ð¸ не докÑменÑа). ÐÑоме Ñого, иногда%ÑÑебÑÐµÑ ÑоблÑÐ´ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑнÑÑ ÑÑловий, за пÑимеÑом â обÑаÑиÑеÑÑ Ðº главе ÐÑобенноÑÑи ÑвойÑÑва height в %.
ÐдиниÑа rem: ÑмеÑÑ px и em
ÐÑак, Ð¼Ñ ÑаÑÑмоÑÑели:
pxâ абÑолÑÑнÑе, ÑÑÑкие, понÑÑнÑе, не завиÑÑÑие ни Ð¾Ñ Ñего.emâ оÑноÑиÑелÑно ÑазмеÑа ÑÑиÑÑа.%â оÑноÑиÑелÑно Ñакого же ÑвойÑÑва ÑодиÑÐµÐ»Ñ (а Ð¼Ð¾Ð¶ÐµÑ Ð¸ не ÑодиÑелÑ, а Ð¼Ð¾Ð¶ÐµÑ Ð¸ не Ñакого же â Ñм. пÑимеÑÑ Ð²ÑÑе).
ÐÐ¾Ð¶ÐµÑ Ð±ÑÑÑ, поÑа Ñже оÑÑановиÑÑÑÑ, Ð¼Ð¾Ð¶ÐµÑ ÑÑого доÑÑаÑоÑно?
Ð-Ñ, неÑ! Ðе вÑе веÑи делаÑÑÑÑ Ñдобно.
ÐеÑнÑмÑÑ Ðº Ñеме ÑÑиÑÑов. ÐÑваÑÑ Ð·Ð°Ð´Ð°Ñи, когда Ð¼Ñ Ñ Ð¾Ñим ÑделаÑÑ Ð½Ð° ÑÑÑаниÑе болÑÑие кнопки «ШÑиÑÑ Ð±Ð¾Ð»ÑÑе» и «ШÑиÑÑ Ð¼ÐµÐ½ÑÑе». ÐÑи нажаÑии на Ð½Ð¸Ñ Ð±ÑÐ´ÐµÑ ÑÑабаÑÑваÑÑ JavaScript, коÑоÑÑй бÑÐ´ÐµÑ ÑвелиÑиваÑÑ Ð¸Ð»Ð¸ ÑменÑÑаÑÑ ÑÑиÑÑ.
ÐообÑе-Ñо ÑÑо можно ÑделаÑÑ Ð±ÐµÐ· JavaScript, в бÑаÑзеÑе обÑÑно еÑÑÑ Ð³Ð¾ÑÑÑие клавиÑи Ð´Ð»Ñ Ð¼Ð°ÑÑÑабиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð²Ñоде Ctrl++, но они ÑабоÑаÑÑ ÑлиÑком ÑÑпо â беÑÑÑ Ð¸ ÑвелиÑиваÑÑ Ð²ÑÑ ÑÑÑаниÑÑ, вмеÑÑе Ñ Ð¸Ð·Ð¾Ð±ÑажениÑми и дÑÑгими ÑлеменÑами, коÑоÑÑе маÑÑÑабиÑоваÑÑ ÐºÐ°Ðº Ñаз не надо. РеÑли надо ÑвелиÑиÑÑ ÑолÑко ÑÑиÑÑ, поÑÐ¾Ð¼Ñ ÑÑо поÑеÑиÑÐµÐ»Ñ Ñ Ð¾ÑÐµÑ ÐºÐ¾Ð¼ÑоÑÑнее ÑиÑаÑÑ?
ÐакÑÑ ÐµÐ´Ð¸Ð½Ð¸ÑÑ Ð¸ÑполÑзоваÑÑ Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ ÑÑиÑÑов? ÐавеÑно не px, Ð²ÐµÐ´Ñ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ Ð² px абÑолÑÑнÑ, еÑли менÑÑÑ, Ñо во вÑеÑ
ÑÑилевÑÑ
пÑавилаÑ
. Ðполне возможна ÑиÑÑаÑиÑ, когда Ð¼Ñ Ð² одном пÑавиле ÑÐ°Ð·Ð¼ÐµÑ Ð¿Ð¾Ð¼ÐµÐ½Ñли, а дÑÑгое забÑли.
СледÑÑÑие кандидаÑÑ â em и %.
РазниÑÑ Ð¼ÐµÐ¶Ð´Ñ Ð½Ð¸Ð¼Ð¸ здеÑÑ Ð½ÐµÑ, Ñак как пÑи задании font-size в пÑоÑенÑаÑ
, ÑÑи пÑоÑенÑÑ Ð±ÐµÑÑÑÑÑ Ð¾Ñ font-size ÑодиÑелÑ, Ñо еÑÑÑ Ð²ÐµÐ´ÑÑ ÑÐµÐ±Ñ Ñак же, как и em.
ÐÑоде бÑ, иÑполÑзоваÑÑ Ð¼Ð¾Ð¶Ð½Ð¾, однако еÑÑÑ Ð¿Ñоблема.
ÐопÑобÑем иÑполÑзоваÑÑ ÑÑÐ¾Ñ Ð¿Ð¾Ð´Ñ
од Ð´Ð»Ñ <li>.
ÐÑоÑеÑÑиÑÑем на Ñаком ÑпиÑке:
<ul>
<li>Собака
<ul>
<li>бÑваеÑ
<ul>
<li>кÑÑаÑей
<ul>
<li>ÑолÑко
<ul>
<li>Ð¾Ñ Ð¶Ð¸Ð·Ð½Ð¸
<ul>
<li>ÑобаÑей</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
Ðока ÑÑо обÑÑнÑй вложеннÑй ÑпиÑок.
ТепеÑÑ ÑменÑÑим ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа до 0.8em, Ð²Ð¾Ñ ÑÑо полÑÑиÑÑÑ:
<style>
li {
font-size: 0.8em;
}
</style>
<ul>
<li>Собака
<ul>
<li>бÑваеÑ
<ul>
<li>кÑÑаÑей
<ul>
<li>ÑолÑко
<ul>
<li>Ð¾Ñ Ð¶Ð¸Ð·Ð½Ð¸
<ul>
<li>ÑобаÑей</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
ÐÑоблема оÑевидна. ХоÑели, как лÑÑÑе, а полÑÑилоÑÑ⦠ÐелковаÑо. ÐаждÑй вложеннÑй <li> полÑÑил ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа 0.8 Ð¾Ñ ÑодиÑелÑ, в иÑоге ÑменÑÑивÑиÑÑ Ð´Ð¾ неÑиÑаемого ÑоÑÑоÑниÑ. ÐÑо не ÑовÑем Ñо, Ñего Ð¼Ñ Ð±Ñ Ð·Ð´ÐµÑÑ Ñ
оÑели.
Ðожно ÑменÑÑиÑÑ ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа ÑолÑко на одном «коÑневом ÑлеменÑе»⦠Ðли воÑполÑзоваÑÑÑÑ ÐµÐ´Ð¸Ð½Ð¸Ñей rem, коÑоÑаÑ, можно ÑказаÑÑ, ÑпеÑиалÑно пÑидÑмана Ð´Ð»Ñ ÑакиÑ
ÑлÑÑаев!
ÐдиниÑа rem задаÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¾ÑноÑиÑелÑно ÑазмеÑа ÑÑиÑÑа ÑлеменÑа <html>.
Ðак пÑавило, бÑаÑзеÑÑ ÑÑавÑÑ ÑÑÐ¾Ð¼Ñ ÑлеменÑÑ Ð½ÐµÐºÐ¾ÑоÑÑй «ÑазÑмнÑй» (reasonable) ÑÐ°Ð·Ð¼ÐµÑ Ð¿Ð¾ ÑмолÑаниÑ, коÑоÑÑй мÑ, конеÑно, можем пеÑеопÑеделиÑÑ Ð¸ иÑполÑзоваÑÑ rem Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ ÑÑиÑÑов внÑÑÑи оÑноÑиÑелÑно него:
<style>
html {
font-size: 14px;
}
li {
font-size: 0.8rem;
}
</style>
<div><button id="up">ÐликниÑе, ÑÑÐ¾Ð±Ñ ÑвелиÑиÑÑ ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа</button></div>
<img src="https://js.cx/clipart/angry_dog.png">
<ul>
<li>Собака
<ul>
<li>бÑваеÑ
<ul>
<li>кÑÑаÑей
<ul>
<li>ÑолÑко
<ul>
<li>Ð¾Ñ Ð¶Ð¸Ð·Ð½Ð¸
<ul>
<li>ÑобаÑей</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<script>
let html = document.documentElement;
up.onclick = function() {
// пÑи помоÑи JS ÑвелиÑиÑÑ ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа html на 2px
html.style.fontSize = parseInt(getComputedStyle(html, '').fontSize) + 2 + 'px';
};
</script>
ÐолÑÑилоÑÑ Ñдобное маÑÑÑабиÑование Ð´Ð»Ñ ÑÑиÑÑов, не влиÑÑÑее на дÑÑгие ÑлеменÑÑ.
ÐлеменÑÑ, ÑÐ°Ð·Ð¼ÐµÑ ÐºÐ¾ÑоÑÑÑ
задан в rem, не завиÑÑÑ Ð´ÑÑг Ð¾Ñ Ð´ÑÑга и Ð¾Ñ ÐºÐ¾Ð½ÑекÑÑа â и ÑÑим поÑ
ожи на px, а Ñ Ð´ÑÑгой ÑÑоÑÐ¾Ð½Ñ Ð¾Ð½Ð¸ вÑе Ð·Ð°Ð´Ð°Ð½Ñ Ð¾ÑноÑиÑелÑно ÑазмеÑа ÑÑиÑÑа <html>.
ÐдиниÑа rem не поддеÑживаеÑÑÑ Ð² IE8-.
ÐÑноÑиÑелÑно ÑкÑана: vw, vh, vmin, vmax
Ðо вÑÐµÑ ÑовÑеменнÑÑ Ð±ÑаÑзеÑÐ°Ñ , иÑклÑÑÐ°Ñ IE8-, поддеÑживаÑÑÑÑ Ð½Ð¾Ð²Ñе единиÑÑ Ð¸Ð· ÑеÑновика ÑÑандаÑÑа CSS Values and Units 3:
vwâ 1% ÑиÑÐ¸Ð½Ñ Ð¾ÐºÐ½Ð°vhâ 1% вÑÑоÑÑ Ð¾ÐºÐ½Ð°vminâ наименÑÑее из (vw,vh), в IE9 обознаÑаеÑÑÑvmvmaxâ наиболÑÑее из (vw,vh)
ÐÑи знаÑÐµÐ½Ð¸Ñ Ð±Ñли ÑозданÑ, в пеÑвÑÑ Ð¾ÑеÑедÑ, Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки мобилÑнÑÑ ÑÑÑÑойÑÑв.
ÐÑ Ð¾Ñновное пÑеимÑÑеÑÑво â в Ñом, ÑÑо лÑбÑе ÑазмеÑÑ, коÑоÑÑе в Ð½Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ñ, авÑомаÑиÑеÑки маÑÑÑабиÑÑÑÑÑÑ Ð¿Ñи изменении ÑазмеÑов окна.
ÐÑÐ¾Ñ ÑекÑÑ Ð½Ð°Ð¿Ð¸Ñан Ñ ÑазмеÑом `5vh`.
ÐÑ ÑможеÑе легко ÑвидеÑÑ, как ÑабоÑÐ°ÐµÑ vh, еÑли поменÑеÑе вÑÑоÑÑ Ð¾ÐºÐ½Ð° бÑаÑзеÑа. ТекÑÑ Ð²ÑÑе бÑÐ´ÐµÑ ÑаÑÑи/ÑменÑÑаÑÑÑÑ.
ÐÑого
ÐÑ ÑаÑÑмоÑÑели единиÑÑ Ð¸Ð·Ð¼ÐµÑениÑ:
pxâ абÑолÑÑнÑе пикÑели, к коÑоÑÑм пÑивÑÐ·Ð°Ð½Ñ Ð¸ поÑÐ¾Ð¼Ñ Ð½Ðµ нÑжнÑmm,cm,ptиpc. ÐÑполÑзÑеÑÑÑ Ð´Ð»Ñ Ð¼Ð°ÐºÑималÑно конкÑеÑного и ÑоÑного Ð·Ð°Ð´Ð°Ð½Ð¸Ñ ÑазмеÑов.emâ задаÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¾ÑноÑиÑелÑно ÑÑиÑÑа ÑодиÑелÑ, можно оÑноÑиÑелÑно конкÑеÑнÑÑ Ñимволов:"x"(ex) и"0"(ch), иÑполÑзÑеÑÑÑ Ñам, где нÑжно ÑпÑоÑÑиÑÑ Ð¼Ð°ÑÑÑабиÑование компоненÑÑ.remâ задаÑÑ ÑÐ°Ð·Ð¼ÐµÑ Ð¾ÑноÑиÑелÑно ÑÑиÑÑа<html>, иÑполÑзÑеÑÑÑ Ð´Ð»Ñ ÑдобÑÑва глобалÑного маÑÑÑабиÑованиÑ: ÑлеменÑÑ ÐºÐ¾ÑоÑÑе планиÑÑеÑÑÑ Ð¼Ð°ÑÑÑабиÑоваÑÑ, задаÑÑÑÑ Ð²rem, а JS менÑÐµÑ ÑÑиÑÑ Ñ<html>.%â оÑноÑиÑелÑно Ñакого же ÑвойÑÑва ÑодиÑÐµÐ»Ñ (как пÑавило, но не вÑегда), иÑполÑзÑеÑÑÑ Ð´Ð»Ñ ÑиÑин, вÑÑÐ¾Ñ Ð¸ Ñак далее, без него никÑда, но надо знаÑÑ, оÑноÑиÑелÑно Ñего он ÑÑиÑÐ°ÐµÑ Ð¿ÑоÑенÑÑ.vw,vh,vmin,vmaxâ оÑноÑиÑелÑно ÑазмеÑа ÑкÑана.
ÐомменÑаÑии
<code>, Ð´Ð»Ñ Ð½ÐµÑколÑÐºÐ¸Ñ ÑÑÑок кода — Ñег<pre>, еÑли болÑÑе 10 ÑÑÑок — ÑÑÑÐ»ÐºÑ Ð½Ð° пеÑоÑниÑÑ (plnkr, JSBin, codepenâ¦)