{"id":54,"date":"2023-05-08T15:58:39","date_gmt":"2023-05-08T13:58:39","guid":{"rendered":"https:\/\/user0.gesem.es\/blog\/?page_id=54"},"modified":"2023-05-08T18:16:29","modified_gmt":"2023-05-08T16:16:29","slug":"model-de-caixa","status":"publish","type":"page","link":"https:\/\/user0.gesem.es\/blog\/model-de-caixa\/","title":{"rendered":"Model de caixa"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">El navegador tracta qualsevol element com una caixa. Tant \u00e9s si \u00e9s un par\u00e0graf com una secci\u00f3, o el propi body.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les caixes tenen una s\u00e8rie de propietats, que haurem de con\u00e9ixer per a poder modificar-les:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"970\" height=\"413\" src=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.30.31.png\" alt=\"\" class=\"wp-image-55\" srcset=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.30.31.png 970w, https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.30.31-300x128.png 300w, https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.30.31-768x327.png 768w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Border<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les caixes estan delimitades per un \u00abborder\u00bb (vora). Aquesta vora pot ser no visible o visible. Si es visible, podem modificar-ne 3 propietats:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>border-width (gruix)<\/li>\n\n\n\n<li>border-style (solid, dotted, dashed,&#8230;)<\/li>\n\n\n\n<li>border-color<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Margin<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les caixes tenen un espai exterior que les separa entre elles (margin)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Padding<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les caixes tenen un espai intern entre els l\u00edmits (el border) i el contingut (el text o altres caixes). Aquest espai intern \u00e9s el padding<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Podem modificar qualsevol d&#8217;aquestes propietats en general (canviar tot el marge exterior, o tot el padding interior) o per separat, donant diferents valors a les coordenades superior (top), dreta (right), esquerra (left) o inferior (bottom).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"601\" height=\"400\" src=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.37.21.png\" alt=\"\" class=\"wp-image-56\" srcset=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.37.21.png 601w, https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.37.21-300x200.png 300w\" sizes=\"auto, (max-width: 601px) 100vw, 601px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Propietats per modificar el padding:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>padding (tot)<\/li>\n\n\n\n<li><code>padding-top<\/code><\/li>\n\n\n\n<li><code>padding-right<\/code><\/li>\n\n\n\n<li><code>padding-bottom<\/code><\/li>\n\n\n\n<li><code>padding-left<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Border-radius<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Per defecte, les caixes tenen un border-radius de 0 p\u00edxels. Podem arrodonir les cantonades fent servir la propietat border-radius. Si la caixa t\u00e9 un color de fons o t\u00e9 una vora visible i fem els cantos arrodonits, ho veurem. Evidentment, si la caixa t\u00e9 el fons blanc o transparent i est\u00e0 sobre un fons blanc, no veurem els cantos arrodonits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Background<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Una altra propietat de les caixes \u00e9s el fons. Podem modificar el fons amb un color (background-color), amb una imatge (background-image) o les dues coses.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tipus de display<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hem fet l&#8217;exercici de donar un color de fons a diferents elements (par\u00e0grafs, articles, seccions,&#8230;) i podem veure que hi ha 2 grans grups d&#8217;elements:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Aquells que van de banda a banda i estan separats del seg\u00fcent element verticalment (es col\u00b7loquen un a sota l&#8217;altra)<\/li>\n\n\n\n<li>Aquells que nom\u00e9s ocupen l&#8217;espai m\u00ednim per a visualitzar-ne el contingut<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Per tant, podem dir que:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Els elements que van de banda a banda s\u00f3n del tipus <strong>block<\/strong><\/li>\n\n\n\n<li>Els que nom\u00e9s ocupen l&#8217;espai m\u00ednim s\u00f3n del tipus <strong>inline<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Per defecte, les imatges i els enlla\u00e7os s\u00f3n del tipus inline. Els par\u00e0grafs, h1, h2,.. s\u00f3n del tipus block<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Amb CSS podem eliminar el display d&#8217;un element, donant-li el valor \u00abnone\u00bb (cap).<br>Els elements amb el tipus de display \u00abnone\u00bb desapareixen del navegador. \u00c9s important tenir en compte, per\u00f2, que no desapareixen del HTML<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tipus de visibilitat<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Amb CSS tamb\u00e9 podem modificar la visibilitat d&#8217;un element. <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>visibility: hidden; fa invisible un element, per\u00f2 el navegador segueix reservant-hi el seu espai<\/li>\n\n\n\n<li>visibility: visible; fa visible un element<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Propietats en proc\u00e9s de standaritzaci\u00f3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El CSS, com l&#8217;HTML, es va revisant de tant en tant. A cada revisi\u00f3, es decideix quines propietats es converteixen en <em>standard<\/em>, quines es descarten i quines es posen en per\u00edode de prova.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quan un navegador encara no s&#8217;ha decidit sobre una propietat, cal posar-li un prefixe al davant per a que aquell navegador la interpreti<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"572\" height=\"494\" src=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.54.41.png\" alt=\"\" class=\"wp-image-57\" srcset=\"https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.54.41.png 572w, https:\/\/user0.gesem.es\/blog\/wp-content\/uploads\/2023\/05\/Captura-de-pantalla-2023-05-08-a-las-15.54.41-300x259.png 300w\" sizes=\"auto, (max-width: 572px) 100vw, 572px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Per exemple, amb CSS podem fer transicions entre estats d&#8217;un element, per\u00f2 aquestes transicions encara no estan donades per 100% desenvolupades i haurem d&#8217;escriure la mateixa propietat v\u00e0ries vegades, una per cada navegador que necessita veure-la prefixada:<\/p>\n\n\n\n<pre id=\"mntl-sc-block_1-0-16\" class=\"wp-block-preformatted\">-webkit-transition: all 4s ease;<br>-moz-transition: all 4s ease;<br>-ms-transition: all 4s ease;<br>-o-transition: all 4s ease;<br>transition: all 4s ease;<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Algunes de les propietats que ja podem fer servir sense prefixe, han tingut prefixe abans, per exemple el border-radius, que fins fa poc s&#8217;havia d&#8217;escriure aix\u00ed:<\/p>\n\n\n\n<pre id=\"mntl-sc-block_1-0-35\" class=\"wp-block-preformatted\">-moz-border-radius: 10px;\n-webkit-border-radius: 10px;\n-webkit-border--radius: 10px;\n-webkit-border-radius: 10px;\nborder-radius: 10px; <\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Box sizing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hi ha dues maneres d&#8217;establir la mida d&#8217;una caixa. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per la majoria de navegadors, l&#8217;amplada i l&#8217;al\u00e7ada d&#8217;un element \u00e9s fruit de la suma de l&#8217;amplada\/al\u00e7ada del contingut (o for\u00e7ada per CSS amb les propietats width i height), del padding i del border:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">width + padding + border = espai horitzontal que ocupa una caixa<br>height + padding + border = espai vertical que ocupa una caixa<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aix\u00f2 significa que si la caixa t\u00e9 border o padding,  l&#8217;amplada final no es correspondr\u00e0 amb l&#8217;amplada establerta amb la propietat width,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Podem dir que els navegadors treballen de manera diferent a l&#8217;hora de dimensionar les caixes, a l&#8217;hora de fer el box sizing (box-sizing).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>content-box<\/strong>: \u00e9s el sistema per defecte, on els marges i la vora es sumen<\/li>\n\n\n\n<li><strong>border-box<\/strong>: permet que el padding (no el margin!) i la vora (border) estiguin inclosos al valor definit per l&#8217;amplada i l&#8217;al\u00e7ada <\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-group exercici\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\">TRUC:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Podem modificar el box-sizing de tos els elements amb CSS abans de fer cap regla<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>*{<br> <code>box-sizing border-box;<\/code> <br>}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Asterisc significa \u00abqualsevol element\u00bb \/ comod\u00ed<\/p>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>El navegador tracta qualsevol element com una caixa. Tant \u00e9s si \u00e9s un par\u00e0graf com una secci\u00f3, o el propi body. Les caixes tenen una s\u00e8rie de propietats, que haurem de con\u00e9ixer per a poder modificar-les: Border Les caixes estan delimitades per un \u00abborder\u00bb (vora). Aquesta vora pot ser no visible o visible. Si es&hellip; <a class=\"more-link\" href=\"https:\/\/user0.gesem.es\/blog\/model-de-caixa\/\">Continueu llegint <span class=\"screen-reader-text\">Model de caixa<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-54","page","type-page","status-publish","hentry","entry"],"_links":{"self":[{"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/pages\/54","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/comments?post=54"}],"version-history":[{"count":5,"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/pages\/54\/revisions"}],"predecessor-version":[{"id":81,"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/pages\/54\/revisions\/81"}],"wp:attachment":[{"href":"https:\/\/user0.gesem.es\/blog\/wp-json\/wp\/v2\/media?parent=54"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}