{"id":1475,"date":"2024-08-02T06:47:38","date_gmt":"2024-08-02T04:47:38","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=1475"},"modified":"2024-08-02T06:47:38","modified_gmt":"2024-08-02T04:47:38","slug":"03-diseno-web-responsive-vista-de-cuadricula-grid","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/css3\/css-responsive\/03-diseno-web-responsive-vista-de-cuadricula-grid\/","title":{"rendered":"03. Dise\u00f1o web Responsive &#8211; Vista de cuadr\u00edcula (Grid)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Que es una vista Grid (cuadr\u00edcula)<\/h2>\n\n\n\n<p>Muchas p\u00e1ginas web se basan en una <strong>vista de cuadr\u00edcula<\/strong>, lo que significa que la p\u00e1gina est\u00e1 dividida en columnas.<\/p>\n\n\n\n<!--more-->\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"255\" src=\"https:\/\/blog.sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-1-1024x255.png\" alt=\"\" class=\"wp-image-1478\" srcset=\"https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-1-1024x255.png 1024w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-1-300x75.png 300w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-1-768x191.png 768w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-1.png 1112w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>El uso de una <strong>vista de cuadr\u00edcula<\/strong> es muy \u00fatil al dise\u00f1ar p\u00e1ginas web. Facilita la colocaci\u00f3n de elementos en la p\u00e1gina.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"366\" src=\"https:\/\/blog.sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-2-1024x366.png\" alt=\"\" class=\"wp-image-1477\" srcset=\"https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-2-1024x366.png 1024w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-2-300x107.png 300w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-2-768x274.png 768w, https:\/\/sutilweb.eu\/wp-content\/uploads\/2024\/08\/Diseno-web-Responsive-Vista-de-cuadricula-Grid-2.png 1114w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Una <strong>vista de cuadr\u00edcula Responsive<\/strong> a menudo tiene 12 columnas y tiene un ancho total del 100%, y se reducir\u00e1 y expandir\u00e1 a medida que cambia el tama\u00f1o de la ventana del navegador.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Creaci\u00f3n de una vista de cuadr\u00edcula responsive<\/h2>\n\n\n\n<p>Comencemos a construir una <strong>vista de cuadr\u00edcula responsive<\/strong>.&nbsp; Primero, hay que asegurarse de que todos los elementos <strong>HTML<\/strong> tengan la propiedad <strong><em>box-sizing<\/em><\/strong> establecida en <strong><em>border-box<\/em><\/strong>. Esto asegura que el <strong>relleno<\/strong> y el <strong>borde<\/strong> est\u00e9n incluidos en el ancho y alto total de los elementos.<\/p>\n\n\n\n<p>Agrega el siguiente c\u00f3digo en su CSS:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">*&nbsp;{\n&nbsp;&nbsp;box-sizing:&nbsp;border-box;\n}<\/pre>\n\n\n\n<p>El siguiente ejm muestra una p\u00e1gina sencilla responsive con 2 columnas.<\/p>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html lang=\"es\"><br>  &lt;head><br>    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/><br>    &lt;style><br>      * {<br>        box-sizing: border-box;<br>      }<br><br>      .header {<br>        border: 1px solid red;<br>        padding: 15px;<br>      }<br><br>      .menu {<br>        width: 25%;<br>        float: left;<br>        padding: 15px;<br>        border: 1px solid red;<br>      }<br><br>      .main {<br>        width: 75%;<br>        float: left;<br>        padding: 15px;<br>        border: 1px solid red;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;div class=\"header\"><br>      &lt;h1>Chania&lt;\/h1><br>    &lt;\/div><br><br>    &lt;div class=\"menu\"><br>      &lt;ul><br>        &lt;li>Link 1&lt;\/li><br>        &lt;li>Link 2&lt;\/li><br>        &lt;li>Link 3&lt;\/li><br>      &lt;\/ul><br>    &lt;\/div><br><br>    &lt;div class=\"main\"><br>      &lt;h1>Prueba&lt;\/h1><br>      &lt;p>Esto es una prueba&lt;\/p><br>    &lt;\/div><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p>El ejemplo anterior est\u00e1 bien si la p\u00e1gina web solo contiene dos columnas. Sin embargo, queremos usar una vista de cuadr\u00edcula receptiva con 12 columnas para tener m\u00e1s control sobre la p\u00e1gina web. Primero debemos calcular el porcentaje para una columna: 100% \/ 12 columnas = 8,33%. Luego creamos una clase para cada una de las 12 columnas, class=\u00bbcol-\u00bb y un n\u00famero que define cu\u00e1ntas columnas debe abarcar la secci\u00f3n.<\/p>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html lang=\"es\"><br>  &lt;head><br>    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/><br>    &lt;title>CSS Grid&lt;\/title><br>    &lt;style><br>      * {<br>        box-sizing: border-box;<br>      }<br><br>      .header {<br>        border: 1px solid red;<br>        padding: 15px;<br>      }<br><br>      .row::after {<br>        content: \"\";<br>        clear: both;<br>        display: table;<br>      }<br><br>      [class*=\"col-\"] {<br>        float: left;<br>        padding: 15px;<br>        border: 1px solid red;<br>      }<br><br>      .col-1 {<br>        width: 8.33%;<br>      }<br>      .col-2 {<br>        width: 16.66%;<br>      }<br>      .col-3 {<br>        width: 25%;<br>      }<br>      .col-4 {<br>        width: 33.33%;<br>      }<br>      .col-5 {<br>        width: 41.66%;<br>      }<br>      .col-6 {<br>        width: 50%;<br>      }<br>      .col-7 {<br>        width: 58.33%;<br>      }<br>      .col-8 {<br>        width: 66.66%;<br>      }<br>      .col-9 {<br>        width: 75%;<br>      }<br>      .col-10 {<br>        width: 83.33%;<br>      }<br>      .col-11 {<br>        width: 91.66%;<br>      }<br>      .col-12 {<br>        width: 100%;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;div class=\"header\"><br>      &lt;h1>Pruebas CSS Grid&lt;\/h1><br>    &lt;\/div><br><br>    &lt;div class=\"row\"><br>      &lt;div class=\"col-3\"><br>        &lt;ul><br>          &lt;li>Link 1&lt;\/li><br>          &lt;li>Link 2&lt;\/li><br>          &lt;li>Link 3&lt;\/li><br>        &lt;\/ul><br>      &lt;\/div><br>      &lt;div class=\"col-9\"><br>        &lt;h1>La ciudad&lt;\/h1><br>        &lt;p>Aqui escribimos nuestro texto...&lt;\/p><br>      &lt;\/div><br>    &lt;\/div><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Explicaci\u00f3n del ejm<\/h2>\n\n\n\n<p>Todas estas columnas deben estar flotando a la izquierda y tener un <strong>padding<\/strong> de 15px:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[class*=\"col-\"]&nbsp;{\n&nbsp; float:&nbsp;left;\n&nbsp; padding:&nbsp;15px;\n&nbsp; border:&nbsp;1px solid red;\n}<\/pre>\n\n\n\n<p>Cada fila debe estar envuelta en un <strong><em>&lt;div&gt;<\/em><\/strong>. El n\u00famero de columnas dentro de una fila siempre debe sumar 12:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;div&nbsp;class=\"row\"&gt;\n&nbsp;&nbsp;&lt;div&nbsp;class=\"col-3\"&gt;...&lt;\/div&gt;&nbsp;&lt;!-- 25% --&gt;\n&nbsp;&nbsp;&lt;div&nbsp;class=\"col-9\"&gt;...&lt;\/div&gt;&nbsp;&lt;!-- 75% --&gt;\n&lt;\/div&gt;<\/pre>\n\n\n\n<p>Las columnas dentro de una fila est\u00e1n todas flotando hacia la izquierda y, por lo tanto, se eliminan del flujo de la p\u00e1gina, y otros elementos se colocar\u00e1n como si las columnas no existieran. Para evitar esto, agregaremos un estilo que borre el flujo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.row::after&nbsp;{\n&nbsp;&nbsp;content:&nbsp;\"\";\n&nbsp; clear:&nbsp;both;\n&nbsp; display:&nbsp;table;\n}<\/pre>\n\n\n\n<p>Tambi\u00e9n queremos agregar algunos estilos y colores para que se vea mejor:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">html&nbsp;{\n&nbsp; font-family:&nbsp;\"Lucida Sans\", sans-serif;\n}\n\n.header&nbsp;{\n&nbsp; background-color:&nbsp;#9933cc;\n&nbsp;&nbsp;color:&nbsp;#ffffff;\n&nbsp; padding:&nbsp;15px;\n}\n\n.menu ul&nbsp;{\n&nbsp; list-style-type:&nbsp;none;\n&nbsp;&nbsp;margin:&nbsp;0;\n&nbsp; padding:&nbsp;0;\n}\n\n.menu li&nbsp;{\n&nbsp; padding:&nbsp;8px;\n&nbsp; margin-bottom:&nbsp;7px;\n&nbsp; background-color&nbsp;:#33b5e5;\n&nbsp; color:&nbsp;#ffffff;\n&nbsp;&nbsp;box-shadow:&nbsp;0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);\n}\n\n.menu li:hover&nbsp;{\n&nbsp; background-color:&nbsp;#0099cc;\n}<\/pre>\n\n\n\n<p>Nuestro ejm completo quedar\u00eda de la siguiente manera.<\/p>\n\n\n\n<p><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/><br>    &lt;style><br>      * {<br>        box-sizing: border-box;<br>      }<br><br>      .row::after {<br>        content: \"\";<br>        clear: both;<br>        display: table;<br>      }<br><br>      [class*=\"col-\"] {<br>        float: left;<br>        padding: 15px;<br>      }<br><br>      .col-1 {<br>        width: 8.33%;<br>      }<br>      .col-2 {<br>        width: 16.66%;<br>      }<br>      .col-3 {<br>        width: 25%;<br>      }<br>      .col-4 {<br>        width: 33.33%;<br>      }<br>      .col-5 {<br>        width: 41.66%;<br>      }<br>      .col-6 {<br>        width: 50%;<br>      }<br>      .col-7 {<br>        width: 58.33%;<br>      }<br>      .col-8 {<br>        width: 66.66%;<br>      }<br>      .col-9 {<br>        width: 75%;<br>      }<br>      .col-10 {<br>        width: 83.33%;<br>      }<br>      .col-11 {<br>        width: 91.66%;<br>      }<br>      .col-12 {<br>        width: 100%;<br>      }<br><br>      html {<br>        font-family: \"Lucida Sans\", sans-serif;<br>      }<br><br>      .header {<br>        background-color: #9933cc;<br>        color: #ffffff;<br>        padding: 15px;<br>      }<br><br>      .menu ul {<br>        list-style-type: none;<br>        margin: 0;<br>        padding: 0;<br>      }<br><br>      .menu li {<br>        padding: 8px;<br>        margin-bottom: 7px;<br>        background-color: #33b5e5;<br>        color: #ffffff;<br>        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);<br>      }<br><br>      .menu li:hover {<br>        background-color: #0099cc;<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;div class=\"header\"><br>      &lt;h1>Chania&lt;\/h1><br>    &lt;\/div><br><br>    &lt;div class=\"row\"><br>      &lt;div class=\"col-3 menu\"><br>        &lt;ul><br>          &lt;li>The Flight&lt;\/li><br>          &lt;li>The City&lt;\/li><br>          &lt;li>The Island&lt;\/li><br>          &lt;li>The Food&lt;\/li><br>        &lt;\/ul><br>      &lt;\/div><br><br>      &lt;div class=\"col-9\"><br>        &lt;h1>The City&lt;\/h1><br>        &lt;p><br>          Chania is the capital of the Chania region on the island of Crete. The<br>          city can be divided in two parts, the old town and the modern city.<br>        &lt;\/p><br>        &lt;p><br>          Resize the browser window to see how the content respond to the<br>          resizing.<br>        &lt;\/p><br>      &lt;\/div><br>    &lt;\/div><br>  &lt;\/body><br>&lt;\/html><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Que es una vista Grid (cuadr\u00edcula) Muchas p\u00e1ginas web se basan en una vista de cuadr\u00edcula, lo que significa que [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1464,"menu_order":2,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1475","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Sutil Web","author_link":"https:\/\/sutilweb.eu\/index.php\/author\/sutilweb\/"},"uagb_comment_info":0,"uagb_excerpt":"Que es una vista Grid (cuadr\u00edcula) Muchas p\u00e1ginas web se basan en una vista de cuadr\u00edcula, lo que significa que [&hellip;]","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/comments?post=1475"}],"version-history":[{"count":2,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1475\/revisions"}],"predecessor-version":[{"id":1479,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1475\/revisions\/1479"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1464"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=1475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}