Responsiiviset fonttikoot CSS:ssä
Tiedät jo, että rem-yksiköt lasketaan
juurielementin fonttikoon suhteessa,
jonka oletusarvo on 16px:
html {
font-size: 16px; /* oletusarvo */
}
Tätä ominaisuutta käytetään muuttaaksesi fonttikokoja laajamittaisesti, kun näytön leveyttä muutetaan. Katsotaan kuinka se tehdään.
Oletetaan, että elementeille on asetettu seuraavat koot:
h1 {
font-size: 1.5rem; /* vastaa 24px */
}
p {
font-size: 1rem; /* vastaa 16px */
margin: 2rem; /* vastaa 32px */
}
Tehdään niin, että kun näytön leveyttä muutetaan,
rem-yksiköillä asetetut koot muuttuvat responsiivisesti.
Tätä varten media-kyselyillä muutetaan
juurielementin fonttikokoa:
@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;
}
}
Annettu seuraava koodi:
@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;
}
}
Yksinkertaista annettua koodia käyttämällä oppaassa kuvailtua tekniikkaa.