Flexbox je jednou z nejoblíbenějších pracovních metod, která Vám umožňuje vytvářet flexibilní a adaptivní rozvržení webové stránky. Někdy však může být nutné deaktivovat Flex blok pro určité položky nebo určitá oprávnění obrazovky. V tomto článku se podíváme na několik způsobů, jak deaktivovat Flex blok v CSS.
Jedním ze způsobů, jak zakázat Flex blok, je použití vlastnosti CSS "display: block". Tato vlastnost se vztahuje na prvek, který byl předem nastaven jako "display: flex". Aplikace " display: block " mění chování prvku tak, že přestane používat Flexbox rozvržení a místo toho je zpracován jako blokový prvek.
Pokud potřebujete deaktivovat Flex blok pouze pro určité rozlišení obrazovky, můžete použít adaptivní požadavky na média. Mediální požadavek umožňuje použít určité styly pouze tehdy, když je podmínka rozlišení obrazovky pravdivá. Chcete-li deaktivovat Flex blok pro určité rozlišení, můžete použít požadavek na média a použít styly, které předefinují Flex rozvržení.
Základy Flex kontejnerů
Základní myšlenkou Flex kontejnerů je, že jeden prvek (nazývaný rodičovský nebo kontejner) může obsahovat další prvky (nazývané dceřiné nebo flexové prvky) a spravovat jejich uspořádání pomocí více vlastností CSS.
Jedním z hlavních nástrojů používaných při práci s Flex kontejnery je osa. Kontejnery Flex mají dvě osy-hlavní (main axis) a příčnou (cross axis), které se rozprostírají od hlavního směru.
Hlavní směr je definován vlastností flex-direction, kterou lze nastavit jak row (horizontální směr), tak column (vertikální směr).
Hlavní osa se táhne ve směru dané hodnoty flex-direction a příčná osa je na ni kolmá. V závislosti na směru a velikosti kontejneru a prvků mohou vlastnosti flexboxu změnit uspořádání prvků jak podél hlavní osy, tak napříč.
Některé z hlavních vlastností používaných k uspořádání prvků uvnitř kontejneru flex jsou: flex-wrap, justify-content, align-items a align-content.
Vlastnost flex-wrap umožňuje ovládat přenos prvků na další řádek v případě, že se nevejdou do dostupného prostoru podél hlavní osy.
Vlastnost justify-content umožňuje zarovnání prvků podél hlavní osy. Určuje, jakým způsobem je volný prostor rozdělen mezi prvky a kolem nich.
Vlastnost align-items umožňuje zarovnání prvků podél příčné osy. Monitoruje vertikální polohu prvků uvnitř kontejneru.
Vlastnost align-content se používá k zarovnání řádků prvků podél příčné osy v případě, že mají volný prostor.
Flex kontejnery jsou výkonným nástrojem pro vytvoření flexibilního a přizpůsobivého designu webové stránky. Umožňují snadno měnit uspořádání prvků a vytvářet složité struktury s minimálním využitím CSS a JavaScriptu.
Koncept vypnutí flex
Vypnutí flexboxu lze dosáhnout několika způsoby. Podívejme se na některé z nich.
- Použití jiné vlastnosti pro umístění prvků: Místo použití vlastností flexboxu, můžete použít jiné vlastnosti CSS, jako je float nebo position. Pokud například potřebujete deaktivovat flex uvnitř bloku s třídou "container", můžete na jeho podřízené prvky použít vlastnost" float: left; "nebo" position: static;".
- Předefinování vlastností flexboxu: Pokud již máte styly, které používají flexbox, můžete vlastnosti přepsat a deaktivovat je v určité části Rozvržení. Pokud máte například třídu "Flex-container" s vlastností " display: flex;", můžete vytvořit novou třídu "no-flexbox", ve které nastavíte hodnotu " display: block;", a použít tuto třídu na bloky, které chcete odpojit od používání flexbox.
- Využití mediálních dotazů: Použití mediálních požadavků Vám umožňuje zakázat flexbox v závislosti na velikosti obrazovky nebo zařízení. Můžete například použít požadavky na média k deaktivaci flexboxu na mobilních zařízeních a použít jej na tabletech a stolních počítačích.
Výběr metody závisí na konkrétních požadavcích vašeho rozvržení a použitých stylech. Zakázání flexboxu může být užitečné v případech, kdy je třeba udělat výjimku z flexibilního rozvržení nebo podpořit starší prohlížeče, které flexbox nepodporují.
Použití display: block
Vlastnost CSS display:block se používá ke změně zobrazení položky na blok. Při použití této vlastnosti se prvek stává blokovým prvkem a zabírá celou dostupnou šířku na vodorovné čáře.
Když je položce přiřazena hodnota block, automaticky se stane blokem, bez ohledu na původní hodnotu, kterou měla nastavenou. To umožňuje změnit model zobrazení položky a použít ji v blokovém kontextu, například k vytvoření vertikálního seznamu:
- Prvek 1
- Prvek 2
- Prvek 3
Každá položka seznamu je bloková položka, protože má vlastnost display: block . To vám umožní umístit každý prvek na nový řádek a nastavit jim své jedinečné možnosti stylingu.
Také blokové prvky mohou obsahovat další blokové prvky a nejen to. Například v každé položce seznamu lze použít jiné seznamy nebo jiné blokové prvky k vytvoření složité hierarchie obsahu.
Použití display: blok je užitečný, když potřebujete umístit prvek na samostatný řádek, nastavit mu odsazení, šířku, výšku, hranice a další možnosti stylizace, které jsou k dispozici pro blokové prvky.
Použití display: none
Při aplikaci této vlastnosti na prvek bude blok zcela skrytý ze stránky. To znamená, že blok nebude zabírat místo na stránce a jeho rozměry nebudou zohledněny při distribuci ostatních prvků.
Aplikovat display: none K FLEX bloku, budeme schopni dosáhnout jeho úplného vypnutí a odstranit jeho vliv na ostatní prvky stránky.
Item 1Item 2Item 3
.flex-container .flex-item .flex-item:nth-child(2)
V tomto příkladu bude skryta druhá položka Flex kontejneru.
Používat display: none, můžeme snadno ovládat viditelnost a zapínání Flex bloků v CSS a dosáhnout požadovaného výsledku.