{"id":1356,"date":"2024-08-01T19:12:58","date_gmt":"2024-08-01T17:12:58","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=1356"},"modified":"2024-08-01T19:12:58","modified_gmt":"2024-08-01T17:12:58","slug":"49-contadores-css","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/css3\/css3-basico\/49-contadores-css\/","title":{"rendered":"49. Contadores CSS"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Los <strong>contadores CSS<\/strong> son \u00abvariables\u00bb mantenidas por <strong>CSS<\/strong> cuyos valores pueden incrementarse mediante reglas de <strong>CSS<\/strong> (para rastrear cu\u00e1ntas veces se usan). Los <strong>contadores<\/strong> te permiten ajustar la apariencia del contenido seg\u00fan su ubicaci\u00f3n en el documento.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">Numeraci\u00f3n autom\u00e1tica con contadores<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Los <strong>contadores CSS<\/strong> son como \u00abvariables\u00bb. Los valores de las variables se pueden incrementar mediante reglas CSS (que rastrear\u00e1n cu\u00e1ntas veces se usan).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para trabajar con contadores CSS usaremos las siguientes propiedades:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>counter-reset:<\/em><\/strong>\u00a0Crea o restablece un contador<\/li>\n\n\n\n<li><strong><em>counter-increment:<\/em><\/strong>\u00a0Incrementa un valor de contador<\/li>\n\n\n\n<li><strong><em>content:<\/em><\/strong>\u00a0Inserta contenido generado<\/li>\n\n\n\n<li>funci\u00f3n <strong><em>counter()<\/em><\/strong> o <strong><em>counters():<\/em><\/strong>\u00a0Agrega el valor de un contador a un elemento<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Para usar un contador CSS, primero debe crearse con <strong><em>counter-reset<\/em><\/strong>. El siguiente ejemplo crea un contador para la p\u00e1gina (en el selector de cuerpo), luego incrementa el valor del contador para cada elemento <strong><em>&lt;h2&gt;<\/em><\/strong> y agrega \u00abSecci\u00f3n &lt;valor del contador&gt;:\u00bb al comienzo de cada elemento <strong><em>&lt;h2&gt;<\/em><\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      body {<br>        counter-reset: section;<br>      }<br><br>      h2::before {<br>        counter-increment: section;<br>        content: \"Section \" counter(section) \": \";<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>Usando contadores CSS&lt;\/h1><br><br>    &lt;h2>HTML Tutorial&lt;\/h2><br>    &lt;h2>CSS Tutorial&lt;\/h2><br>    &lt;h2>JavaScript Tutorial&lt;\/h2><br>    &lt;h2>Python Tutorial&lt;\/h2><br>    &lt;h2>SQL Tutorial&lt;\/h2><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Contadores de anidamiento<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El siguiente ejemplo crea un contador para la p\u00e1gina (section) y un contador para cada elemento <strong><em>&lt;h1&gt;<\/em><\/strong> (subsection). El contador de \u00absection\u00bb se contar\u00e1 para cada elemento <strong><em>&lt;h1&gt;<\/em><\/strong> con \u00abSection&lt;valor del contador de secci\u00f3n&gt;.\u00bb, y el contador de \u00absubsection\u00bb se contar\u00e1 para cada elemento <strong><em>&lt;h2&gt;<\/em><\/strong> con \u00ab&lt;valor del contador de secci\u00f3n &gt;.&lt;valor del contador de subsecciones&gt;\u00bb.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      body {<br>        counter-reset: section;<br>      }<br><br>      h1 {<br>        counter-reset: subsection;<br>      }<br><br>      h1::before {<br>        counter-increment: section;<br>        content: \"Section \" counter(section) \". \";<br>      }<br><br>      h2::before {<br>        counter-increment: subsection;<br>        content: counter(section) \".\" counter(subsection) \" \";<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;h1>HTML\/CSS Tutorials&lt;\/h1><br>    &lt;h2>HTML&lt;\/h2><br>    &lt;h2>CSS&lt;\/h2><br>    &lt;h2>Bootstrap&lt;\/h2><br>    &lt;h2>W3.CSS&lt;\/h2><br><br>    &lt;h1>Scripting Tutorials&lt;\/h1><br>    &lt;h2>JavaScript&lt;\/h2><br>    &lt;h2>jQuery&lt;\/h2><br>    &lt;h2>React&lt;\/h2><br><br>    &lt;h1>Programming Tutorials&lt;\/h1><br>    &lt;h2>Python&lt;\/h2><br>    &lt;h2>Java&lt;\/h2><br>    &lt;h2>C++&lt;\/h2><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Un contador tambi\u00e9n puede ser \u00fatil para hacer listas delineadas porque una nueva instancia de un contador se crea autom\u00e1ticamente en los elementos secundarios. Aqu\u00ed usamos la funci\u00f3n <strong><em>counters()<\/em><\/strong> para insertar una cadena entre diferentes niveles de contadores anidados:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html><br>&lt;html><br>  &lt;head><br>    &lt;style><br>      ol {<br>        counter-reset: section;<br>        list-style-type: none;<br>      }<br><br>      li::before {<br>        counter-increment: section;<br>        content: counters(section, \".\") \" \";<br>      }<br>    &lt;\/style><br>  &lt;\/head><br>  &lt;body><br>    &lt;ol><br>      &lt;li>item&lt;\/li><br>      &lt;li><br>        item<br>        &lt;ol><br>          &lt;li>item&lt;\/li><br>          &lt;li>item&lt;\/li><br>          &lt;li><br>            item<br>            &lt;ol><br>              &lt;li>item&lt;\/li><br>              &lt;li>item&lt;\/li><br>              &lt;li>item&lt;\/li><br>            &lt;\/ol><br>          &lt;\/li><br>          &lt;li>item&lt;\/li><br>        &lt;\/ol><br>      &lt;\/li><br>      &lt;li>item&lt;\/li><br>      &lt;li>item&lt;\/li><br>    &lt;\/ol><br><br>    &lt;ol><br>      &lt;li>item&lt;\/li><br>      &lt;li>item&lt;\/li><br>    &lt;\/ol><br>  &lt;\/body><br>&lt;\/html><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Resumen<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Propiedad<\/th><th>Descripci\u00f3n<\/th><\/tr><tr><td>content<\/td><td>Usado con los pseudo-elementos ::before y ::after, para insertar contenido generado<\/td><\/tr><tr><td>counter-increment<\/td><td>Incrementa uno o m\u00e1s valores de contador<\/td><\/tr><tr><td>counter-reset<\/td><td>Crea o restablece uno o m\u00e1s contadores<\/td><\/tr><tr><td>counter()<\/td><td>Devuelve el valor actual del contador nombrado<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Los contadores CSS son \u00abvariables\u00bb mantenidas por CSS cuyos valores pueden incrementarse mediante reglas de CSS (para rastrear cu\u00e1ntas veces [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":563,"menu_order":48,"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-1356","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":"Los contadores CSS son \u00abvariables\u00bb mantenidas por CSS cuyos valores pueden incrementarse mediante reglas de CSS (para rastrear cu\u00e1ntas veces [&hellip;]","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1356","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=1356"}],"version-history":[{"count":3,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1356\/revisions"}],"predecessor-version":[{"id":1359,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/1356\/revisions\/1359"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/563"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=1356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}