Usporiadanie blokov pomocou médiadotazov v CSS
Naučme sa vykonávať usporiadanie blokov pri rôznej šírke obrazovky. Ako príklad implementujme toto správanie:
Na začiatok napíšme HTML kód našich blokov:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
</div>
Teraz napíšme štýly rodičovi našich blokov:
.parent {
display: flex;
width: 90%;
margin: 50px auto;
border: 1px solid red;
}
Teraz napíšme štýly samotným blokom, bez uvedenia tých vlastností, ktoré sa budú meniť médiadotazmi:
.child {
box-sizing: border-box;
padding: 20px;
border: 1px solid green;
}
Na veľkej šírke obrazovky nech je medzera medzi blokmi vypočítaná automaticky:
@media (min-width: 500px) {
.parent {
justify-content: space-between;
}
}
Nastavme šírku našim blokom o niečo menšiu
50%, aby sme nechali miesto
pre odstup:
@media (min-width: 500px) {
.child {
width: 49.5%;
}
}
Na malej šírke obrazovky zoraďme naše bloky do stĺpca:
@media (max-width: 500px) {
.parent {
flex-direction: column;
}
}
Priraďme im spodný odstup:
@media (max-width: 500px) {
.child {
margin-bottom: 10px;
}
}
Zhromaždíme všetko dokopy a získame nasledujúci kód:
.parent {
display: flex;
width: 90%;
margin: 50px auto;
}
.child {
box-sizing: border-box;
padding: 20px;
border: 1px solid green;
}
@media (max-width: 500px) {
.parent {
flex-direction: column;
}
.child {
margin-bottom: 10px;
}
}
@media (min-width: 500px) {
.parent {
justify-content: space-between;
}
.child {
width: 49.5%;
}
}