Responzivní velikosti písma v CSS
Už víte, že jednotky rem se počítají
vzhledem k velikosti písma kořenového elementu,
která je ve výchozím nastavení 16px:
html {
font-size: 16px; /* výchozí hodnota */
}
Této vlastnosti se využívá k hromadné změně velikostí písma při změně šířky obrazovky. Podívejme se, jak se to dělá.
Předpokládejme, že našim elementům jsou nastaveny následující velikosti:
h1 {
font-size: 1.5rem; /* odpovídá 24px */
}
p {
font-size: 1rem; /* odpovídá 16px */
margin: 2rem; /* odpovídá 32px */
}
Nyní uděláme to, aby se při změně šířky obrazovky
adaptivně měnily velikosti nastavené pomocí
rem. K tomu pomocí media queries budeme měnit
velikost písma kořenového elementu:
@media (max-width: 600px) {
html {
font-size: 16px;
}
}
@media (min-width: 600px) and (max-width: 1200px) {
html {
font-size: 18px;
}
}
@media (min-width: 1200px) {
html {
font-size: 20px;
}
}
Je dán následující kód:
@media (max-width: 300px) {
h1 {
font-size: 32px;
}
h2 {
font-size: 24px;
}
p {
font-size: 16px;
}
}
@media (min-width: 300px) and (max-width: 900px) {
h1 {
font-size: 36px;
}
h2 {
font-size: 27px;
}
p {
font-size: 18px;
}
}
@media (min-width: 900px) {
h1 {
font-size: 40px;
}
h2 {
font-size: 30px;
}
p {
font-size: 20px;
}
}
Zjednodušte uvedený kód pomocí techniky popsané v učebnici.