Ak pracujeme s CSS knižnicou bootstrap, skôr či neskôr sa dostaneme do situácie, kedy potrebujeme nastaviť CSS štýl nejakému komponentu/tagu … podľa rôznej veľkosti obrazovky prehliadača. Slúži na to kľúčové slovo @media. Bootstrap rozlišuje 4 základné veľkosti (nájdeme ich aj vo vnútri knižnice):
.container {
}
@media (min-width: 768px) {
.container {
width: 750px;
}
}
@media (min-width: 992px) {
.container {
width: 970px;
}
}
@media (min-width: 1200px) {
.container {
width: 1170px;
}
}
Základné veľkosti podľa bootstrap-u sú teda štyri:
- veľkosť do 768 pixelov
- veľkosť od 768 do 992 px
- veľkosť od 992 do 1200 px
- veľkosť nad 1200 pixelov
Toto nie je žiadne tajomstvo. No týmto blog postom by som chcel upozorniť na jednu drobnosť. A to použitie reverzného princípu pomocou @media (max-width: x). Definovanie štýlu nie od minimálnej šírky ale do maximálnej šírky. Tu treba dať pozor na jednu vec a tou je jeden pixel. Ak definujeme štýl od minimálnej šírky pomocou min-width:x tak k nemu opačná definícia pomocou max-width je max-width:x-1. Pre úvodný kus kódu by to bolo nasledovne:
@media (max-width: 767px) {
/* Custom definitions ...*/
}
@media (max-width: 991px) {
/* Custom definitions ...*/
}
@media (max-width: 1199px) {
/* Custom definitions ...*/
}
A ešte jedna poznámka na záver:
- @media (max-width: 767px) platí pre šírku od 0 do 767 pixelov
- @media (min-width: 768px) platí pre šírku od 768 pixelov a viac