Webová stránka je složitý a důležitý proces, který vyžaduje, aby vývojář znal a porozuměl základním principům CSS. Jedním z běžných úkolů na pracovním stole je nastavit výšku bloku rovnající se jeho šířce. V tomto článku se podíváme na několik způsobů, jak dosáhnout takového výsledku.
Metoda číslo jedna: použití pseudoelementu ::before.
Chcete-li nastavit výšku bloku rovnající se jeho šířce, použijte pseudoelement ::before. Přidejte jej do požadovaného bloku a nastavte mu následující vlastnosti CSS:
::beforeZde padding-top: 100% hraje roli klíčová vlastnost, která umožňuje nastavit výšku bloku rovnající se jeho šířce. Pseudoelement bude zabírat celou šířku bloku a výšku rovnající se této šířce, což nám umožní nastavit požadovaný poměr.
Metoda číslo dvě: použití pseudoelementu ::before a umístění.
Pro flexibilnější a přesnější umístění jednotky stejné šířky lze použít následující sadu vlastností CSS:
::before .containerZde přidáním nemovitosti position: relative pseudoelement ::before, budeme schopni přesně umístit vnitřní jednotku .container. Nastavením šířky a výšky 100% pro něj získáme blok, jehož výška se rovná jeho šířce, a budeme moci volně pracovat s jeho obsahem.
Seznámili jsme se tedy se dvěma způsoby nastavení výšky bloku rovnající se jeho šířce. Výběrem možnosti vhodné pro váš projekt a použitím nabízených vlastností CSS můžete tento problém vyřešit efektivně a bez velkého úsilí.
Nevýhody standardních metod
Pokud jste se někdy pokusili dosáhnout výšky bloku rovného jeho šířce pomocí standardních metod CSS, Pak jste s největší pravděpodobností narazili na některé nevýhody. Zde jsou některé z nich:
1. Omezení obsahu:
I když nastavíte šířku položky v procentech, její výška bude vždy automaticky vypočítána podle jejího obsahu. To může způsobit, že výška prvku nebude odpovídat jeho šířce.
2. Negativní dopady na podpisy:
Pokud použijete standardní metody, aby se výška bloku rovnala jeho šířce, můžete se setkat s problémem, když váš podpis umístěný vedle bloku změní svou pozici nebo překryje část obsahu bloku.
3. Závislost na obsahu:
Další nevýhodou použití standardních metod je, že vycházejí z obsahu bloku. Pokud se obsah bloku změní nebo zvýší, změní se také jeho výška, což může narušit design stránky.
Použití vlastnosti "padding-bottom"
Pro začátek nastavíme bloku standardní hodnoty pro šířku a výšku. Například:
.my-block width: 200px;
height: 200px;
>
Nyní, aby se výška bloku rovnala jeho šířce, přidáme k němu vlastnost "padding-bottom" a uvedeme hodnotu v procentech. Toto procento se rovná poměru šířky bloku k jeho výšce.
.my-block width: 200px;
height: 200px;
padding-bottom: 100%;
>
Nyní se výška bloku automaticky vypočítá na základě dané šířky. Hodnota vlastnosti "padding-bottom" 100% znamená, že ústup zespodu bude 100% šířky bloku.
Vlastnost " padding-bottom "lze také kombinovat s jinými vlastnostmi, například lze přidat vnitřní odsazení bloku nastavením hodnot pro vlastnosti" padding-top"," padding-right "a"padding-left".
Použití vlastnosti "padding-bottom" tedy umožňuje snadno a flexibilně nastavit výšku bloku rovnající se jeho šířce, aniž byste museli používat JavaScript nebo jiná složitá technická řešení.
Jak funguje vlastnost "padding-bottom"
Vlastnost "padding-bottom" umožňuje nastavit odsazení uvnitř prvku od jeho spodní hranice. Umožňuje ovládat prázdný prostor pod obsahem prvku.
Hodnota vlastnosti "padding-bottom" je uvedena v pixelech (px), procentech (%) nebo jiných dostupných měrných jednotkách. Například:
padding-bottom: 20px;
padding-bottom: 10%;
padding-bottom: 2em;
Vlastnost "padding-bottom" může být užitečná, když je nutné vytvořit odsazení pod prvkem, abyste jej oddělili od jiných prvků nebo nastavili místo pro zobrazení pozadí nebo ohraničení.
Pokud chcete nastavit stejnou výšku a šířku bloku, můžete použít vlastnost "padding-bottom" s procentuální hodnotou, například:
padding-bottom: 50%;
background-color: red;
V tomto příkladu bude blok široký a vysoký rovných 50% šířky nadřazeného prvku. Ale pomocí vlastnosti "padding-bottom" lze nastavit i jiné proporce v závislosti na požadovaném výsledku.
Použití pseudoelementů
Jedním z nejoblíbenějších způsobů, jak používat pseudoelementy k zadání výšky bloku rovného jeho šířce, je přidání pseudoelementu "obsah" pomocí pseudoklasu ::before nebo ::after .
Chcete-li použít pseudoelement, musíte pomocí CSS selektoru vybrat jednotku, do které chcete přidat výšku, jako je třída nebo ID. Poté pomocí pseudoklasu:: before nebo:: after můžete přidat styly a nastavit požadovanou výšku a šířku.
.container .container::beforeV tomto příkladu nastavíme třídní kontejner .container má šířku 200 pixelů a nulovou výšku a pomocí pseudoelementu ::before přidejte další blok s výškou rovnou šířce kontejneru.
Pomocí indikace relativního polohování (position: relative) pro kontejner a zadání nulové výšky pomocí vnitřního odsazení (padding-bottom: 100%) vytváříme proporcionální prostor pro pseudoelement.
Pseudoelementy lze dále stylizovat pomocí jiných vlastností CSS, jako je nastavení pozadí, tahu, obsahu atd.
Použití pseudoelementů je flexibilní a pohodlný způsob, jak nastavit výšku bloku rovnající se jeho šířce. Tato metoda umožňuje vyhnout se nutnosti změny struktury HTML a umožňuje v případě potřeby snadno měnit velikosti bloků.