Flexbox и Grid игралиште
Градете flexbox и CSS grid распореди визуелно. Подесете својства на контејнер и елементи, именувајте области, видете резултат во живо и копирајте CSS и HTML.
Готови распореди
Кликнете на елемент во прегледот за да го изберете и да ги уредите неговите својства подолу.
Како да го користите Flexbox и Grid игралиштето
- Изберете Распоред: Flexbox или Grid, или почнете од еден од Готови распореди (Центриран, Навигациска лента, Картички што се префрлаат, Странична лента, Респонзивна мрежа од картички, Holy grail, 12 колони).
- Подесете ги својствата на Контејнер. За flexbox:
flex-directionиflex-wrap. За grid:grid-template-columns,grid-template-rows,grid-auto-flow,justify-itemsиgrid-template-areas. И двата делатjustify-content,align-items,align-content,row-gap (px)иcolumn-gap (px). - Управувајте со Елементи преку Додај елемент, Отстрани го избраниот елемент и Ресетирај го избраниот елемент. Кликнете на елемент во прегледот (или стигнете до него со Tab и притиснете Enter) за да го изберете.
- Уредете го избраниот елемент:
orderиalign-selfво двата режима,flex-grow,flex-shrinkиflex-basisза flexbox иgrid-area,grid-column,grid-rowиjustify-selfза grid. - Копирајте го CSS код и соодветниот HTML код со нивните копчиња Копирај.
Секоја контрола е стандардно поле од образец, па целото игралиште работи само со тастатура. CSS содржи само својства што сте ги променеле од основните вредности, што го држи кратко, а елементите со идентични поставки делат едно правило (.item кога сите се совпаѓаат).
Алатката работи во вашиот прелистувач. Ништо од внесеното не се испраќа на сервер.
Flexbox накратко
Flexbox ги распоредува елементите по една оска. flex-direction ја одредува главната оска (ред или колона); justify-content ги распределува елементите по неа (center, space-between…), а align-items ги позиционира на попречната оска. Со flex-wrap: wrap елементите што не се собираат се префрлаат во нов ред, а align-content потоа ги распоредува тие редови.
Секој елемент има три својства за димензионирање, обично запишани заедно како flex:
flex-basis: почетната големина (autoја користи содржината илиwidth);flex-grow: колку од слободниот простор го зема елементот (0 = ништо, 1 = еднаков дел);flex-shrink: колку отстапува кога просторот е тесен (0 = никогаш не се собира).
Обликот Странична лента го покажува класичниот шаблон: странична лента со flex-basis: 200px и flex-shrink: 0 и главна област со flex-grow: 1.
CSS Grid накратко
Grid ги распоредува елементите во две димензии. grid-template-columns: repeat(3, 1fr) создава три еднакви колони; fr е дел од слободниот простор. repeat(auto-fill, minmax(120px, 1fr)) создава онолку колони од најмалку 120px колку што се собираат, што прави респонзивна мрежа од картички без media query.
Елементите ги пополнуваат ќелиите по ред, освен ако ги позиционирате: grid-column: span 2 го прави елементот широк две колони, а grid-column: 1 / -1 го протега преку целиот ред.
grid-template-areas ви овозможува да го нацртате распоредот со имиња. Внесете еден ред по линија, на пример header header па nav main, и дајте им на елементите grid-area: header или grid-area: main. Точката означува празна ќелија. Секој ред бара ист број ќелии и секое име мора да формира правоаголник; алатката ве предупредува инаку.
Често поставувани прашања
Дали да користам flexbox или grid?
Flexbox за еднодимензионална содржина како алатни ленти, групи копчиња или центрирање. Grid кога редовите и колоните мора да се порамнат, како кај распореди на страници и галерии од картички. Добро се комбинираат: мрежа од картички чија внатрешност користи flexbox.
Зошто align-items не менува ништо?
Во ред, елементите стандардно се протегаат до висината на контејнерот, а контејнерот е висок само колку неговата содржина. Дајте му висина или погледнете го прегледот, кој има минимална висина.
Што прави gap?
Го поставува просторот меѓу елементите (не околу нив). Работи и во flexbox и во grid во сите современи прелистувачи.
Дали order го менува редоследот на читање?
Не. order само визуелно ги поместува елементите; читачите на екран и навигацијата со тастатура сè уште го следат HTML редоследот, па користете го штедливо.
Поврзани алатки
- CSS форматер и минификатор Улепшајте неуреден CSS со чисто вовлекување или минифицирајте го со csso и видете ја големината пред и по. Работи во прелистувачот, ништо не се качува.
- Генератор на border-radius Обликувајте го CSS border-radius визуелно со повлекување. Подесете секој агол во px или %, користете елиптична синтакса со 8 вредности и копирајте го кодот.
- Генератор на box-shadow Креирајте слоевити CSS сенки со преглед во живо. Подесете поместување, заматување, ширење, боја, провидност и inset, пробајте неуморфизам и копирајте го кодот.