Bo to co jest, to jest efektywnie flex (przynajmniej tak jak rozumiem), choć bez użycia tego słowa.
flex to po prostu coś, co ma display: flex
i przeglądarka później może to fajnie pozycjonować:
https://css-tricks.com/snippets/css/a-guide-to-flexbox/
Na czym w swojej istocie polega rewolucja flex ?
Na tym, że jeśli masz ciąg poziomy albo pionowy elementów (pojedynczy wiersz albo pojedynczą kolumnę - chociaż mogą się zawijać), to przeglądarka sama może ci to pozycjonować na różne sposoby, dostosować rozmiar elementów wedle tego, jaki "tryb" zadeklarujesz. Ogólnie tak, jak jest to wyjaśnione na obrazkach w linku wyżej.
Na czym polegają święte wojny nad display: flex
Na tym, na czym robić layout strony.
- Dawno temu ludzie robili layout na tabelkach (
<table>
). Miało to swoje wady, było nieczytelne i nieelastyczne.
- Później była era layoutu "na divach" (z użyciem właściwości CSS np. display, position, float, clear itp. albo... emulowali tabelki za pomocą
display: table
). Miało to tę wadę, że wymagało dużego skilla i robienia wszystkiego na około.
- Potem wszedł
display: flex
i ludzie zajarani zaczęli robić layout na flexach (hierarchicznie wkładając flexa we flexa). Jednak flex też ma wady - wymaga zrozumienia jak działa. Plus nie wszystko da się elegancko wystylować flexem.
- Potem wszedł
display: grid
, który jest trochę jak flex, ale dla siatek. Trochę jak powrót do layoutu przypominającego tabelki, tylko, że lepiej, bo grid jest specjalnie dostosowany do tego, żeby robić layout, jest elastyczny. Jednak również ma wady - podobnie jak flex wymaga zrozumienia jak działa i nie wszystko da się ładnie wystylować gridem (niektóre rodzaje gridów mogą być zbyt zaawansowane).
Natomiast wojny polegają na tym, że każdy kolejny wynalazek nie znosi przydatności pozostałych. Nawet elementy <table>
mają dzisiaj sens, o ile robisz faktycznie tabelkę, która przedstawia jakieś tabularyczne dane (jak w Excelu).
Więc ktoś mówi: używam tylko flexa zawsze i wszędzie!
A ktoś odpowiada no dobra, ale flex nie zawsze się sprawdza i nie ma co tego nadużywać
.