Použití mřížky CSS pro rozvržení ve stylu časopisu

CSS vám poskytuje spoustu flexibility při navrhování atraktivních a citlivých rozvržení. Rozvržení ve stylu časopisu organizuje smíšený textový a obrázkový obsah v atraktivním a poutavém formátu, což z něj činí oblíbenou volbu.

CSS Grid vám poskytuje nástroje a jemné ovládání, které potřebujete k dosažení tohoto rozvržení, takže je to skvělá technika, kterou se můžete naučit.

Co jsou rozvržení ve stylu časopisu?

Rozvržení ve stylu časopisu používají strukturu podobnou mřížce k uspořádání obsahu do sloupců a řádků.

Jsou skvělé pro zobrazování různých typů obsahu, jako jsou články, obrázky a reklamy, organizovaným a přitažlivým způsobem.

Pochopení mřížky CSS

CSS Grid je robustní nástroj pro rozvržení, který umožňuje umístit prvky do dvourozměrného prostoru, což usnadňuje vytváření sloupců a řádků.

  9 nejlepších audio extraktorů pro extrahování zvuku z videa

S tímto typem rozvržení vstupují do hry dvě primární komponenty: kontejner mřížky, zodpovědný za definování struktury mřížky, a položky mřížky, které jsou podřízenými prvky kontejneru.

Zde je jednoduchý příklad toho, jak můžete použít mřížku CSS k vytvoření mřížky 3×3:

 .grid-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.grid-item {
    background-color: #f76a6a;
    padding: 20px;
}

Tento kód definuje mřížkový kontejner se třemi sloupci o stejné šířce a 20px mezerou mezi položkami. Zde je výsledek:

Nastavení struktury HTML

Pro rozvržení ve stylu časopisu budete potřebovat dobře strukturovaný dokument HTML. Zvažte použití sémantických prvků k uspořádání obsahu, jako jsou

a

. Zde je dobrý výchozí bod:

 <body>
    <section class="magazine-layout">
        <article>
            <img src="https://source.unsplash.com/random/?city,night" />
            <p>Some Article Title</p>
        </article>

        <article>
            <img src="https://source.unsplash.com/random/?city,day" />
            <p>Some Article Title</p>
        </article>

        <article>
            <img src="https://source.unsplash.com/random/?animal" />
            <p>Some Article Title</p>
        </article>

        <article>
            <img src="https://source.unsplash.com/random/?book" />
            <p>Some Article Title</p>
        </article>

        <article>
            <img src="https://source.unsplash.com/random/?food" />
            <p>Some Article Title</p>
        </article>
    </section>
</body>

Definování kontejneru mřížky

Chcete-li vytvořit mřížku pro rozvržení ve stylu časopisu, přidejte následující kód CSS:

 .magazine-layout {
    height: 100%;
    max-width: 130rem;
    margin: 0 auto;

    
    display: grid;

    
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

    
    grid-template-rows: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    padding: 2rem;
}

Tento CSS určuje, že prvek kontejneru, .magazine-layout, je kontejner mřížky používající deklaraci display: grid.

  Jak vytvořit animaci psacího stroje nebo příkazového řádku v PowerPointu

Vlastnosti grid-template-columns a grid-template-rows používají kombinaci opakování, automatického přizpůsobení a minmax. Ty zajišťují, že šířky sloupců a výšky řádků jsou alespoň 250 pixelů a do každého se vejde co nejvíce položek.

Umístění položek mřížky

Nyní upravte styl každého článku a jeho obsahu, abyste vytvořili atraktivní prvky ve stylu miniatur:

 article {
    overflow: hidden;
    border-radius: 0.5rem;
    position: relative;
    color: #fff;
}

.article img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    max-height: 400px;
}

.article p {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 2rem;
    background: #333333c1;
    font-size: 2rem;
    border-radius: 0.5rem;
}

V tuto chvíli by vaše webová stránka měla vypadat nějak takto:

Vytváření rozvržení ve stylu časopisu

Chcete-li dosáhnout skutečného vzhledu ve stylu časopisu, přidejte styly CSS, které rozloží prvky článku v libovolném pořadí:

 .article:nth-child(1) {
    grid-column: 1 / span 3;
}

.article:nth-child(4) {
    grid-column: 2 / span 2;
}

Vaše stránka by nyní měla vypadat takto:

  Jak přesunout domovský adresář Linuxu na jiný disk

Responzivní design s CSS mřížkou

Jednou z výhod CSS Grid je jeho vlastní schopnost reagovat. Pomocí dotazů na média můžete upravit rozvržení pro různé velikosti obrazovky. Například:

 
@media screen and (max-width: 1100px) {
    .article:nth-child(3) {
        grid-column: 2 / span 2;
    }

    .article:nth-child(5) {
        grid-row: 3 / span 1;
    }
}


@media screen and (max-width: 600px) {
    .article:nth-child(2),
    .article:nth-child(3),
    .article:nth-child(4),
    .article:nth-child(5) {
        grid-column: 1 / span 3;
    }
}

Tyto dotazy na média přepínají mezi více definicemi rozvržení tak, aby co nejlépe vyhovovaly velikosti obrazovky zařízení. Vaše konečné rozložení se přizpůsobí různým velikostem:

Transformace rozvržení pomocí mřížky CSS

CSS Grid je flexibilní nástroj, který můžete použít k vytvoření rozvržení ve stylu časopisu, které se přizpůsobí různým velikostem obrazovky. Umožňuje definovat struktury mřížky, umísťovat položky a upravovat rozvržení.

Experimentujte s různými konfiguracemi mřížky a styly, abyste dosáhli dokonalého rozvržení svého webu inspirovaného časopisy.