Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗mkSpFxTCG 101 of 128 menu
◀ ▶

Mosaico con márgenes correctos en CSS

Hagamos un mosaico que funcione realmente sin problemas con márgenes usando margin. Supongamos que inicialmente tenemos un mosaico sin márgenes:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> <div class="child">9</div> </div> .parent { display: flex; flex-wrap: wrap; width: 300px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; border: 1px solid green; }

:

Hagamos márgenes horizontales entre los elementos usando margin.

Para ello, establezcamos para todos los elementos hijos margin-right en el valor 10px, y para cada tercer hijo, pongamos este margin a cero. Usemos para esto la pseudoclase nth-child, estableciendo en ella el parámetro para obtener cada tercer elemento.

Aumentemos también el ancho del padre a 320px, para dar espacio para los márgenes, y veamos qué obtenemos:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> <div class="child">9</div> </div> .parent { display: flex; flex-wrap: wrap; width: 320px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; margin-right: 10px; border: 1px solid green; } .child:nth-child(3n) { margin-right: 0; }

:

Entonces, todo funciona. Quitemos el último elemento, para que en la última fila haya menos elementos y asegurémonos de que con esto no tengamos problemas con esta última fila:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> </div> .parent { display: flex; flex-wrap: wrap; width: 320px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; margin-right: 10px; border: 1px solid green; } .child:nth-child(3n) { margin-right: 0; }

:

Crea un mosaico de dos elementos por fila con una distancia entre elementos de 20px.

← →
↑
Español▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar