• Day2-CSS- CSS计数器


    (本文是查看了---菜鸟教程之后的学习笔记)---感谢菜鸟教程

    一、前期基本知识

    CSS 计数器使用到以下几个属性:

    • counter-reset - 创建或者重置计数器
    • counter-increment - 递增变量
    • content - 插入生成的内容
    • counter() 或 counters() 函数 - 将计数器的值添加到元素

    要使用 CSS 计数器,得先用 counter-reset 创建:

    二、实例

    1、①使用计数器自动编号

    知识点:通过在body里面创立了section这个计数器

      <style>
            body{
                counter-reset: section;
            }
      </style>

    通过调用::before 意为在元素的前面加东西

    通过counter-increment对这个计数器进行递增、通过counter()函数得到当前计数器所代表的值是多少

       <style>
            body{
                counter-reset: section;
            }
            h2::before{
                counter-increment: section;
                content: "Section" counter(section)":";
            }
        </style>

    效果:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            body{
                counter-reset: section;
            }
            h2::before{
                counter-increment: section;
                content: "Section" counter(section)":";
            }
        </style>
    </head>
    <body>
        <h1>使用 CSS 计数器:</h1>
        <h2>HTML 教程</h2>
        <h2>CSS 教程</h2>
        <h2>JavaScript 教程</h2>
        
        <p><b>注意:</b> IE8 需要指定 !DOCTYPE 才可以支持该属性。</p>
        
    </body>
    </html>
    View Code

    2、嵌套计数器

    ①效果:以下实例在页面创建一个计数器,在每一个 <h1> 元素前添加计数值 "Section <主标题计数值>.", 嵌套的计数值则放在 <h2> 元素的前面,内容为 "<主标题计数值>.<副标题计数值>":

     ②、知识点:

          1、如果有h1 和h2的话,要给h1和h2都用上计数器的话,因为对在body中设置的计数器,只能用在需要用到的标签中“地位最高的”那个,所以

          

    body {
      counter-reset: section;
    }

          2、就只能用在h1身上,如果h2还要在话,就只能在h1层面上再创立一个计数器,用于供h2的使用了

    h1 {
      counter-reset: subsection;
    }

          3、并且在h2中的时候还是可以用到在h1中使用过的计数器的

    h2::before {
      counter-increment: subsection;
      content: counter(section) "." counter(subsection) " ";
    }

    ③完整代码:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>菜鸟教程(runoob.com)</title>
    <style>
    body {
      counter-reset: section;
    }
    
    h1 {
      counter-reset: subsection;
    }
    
    h1::before {
      counter-increment: section;
      content: "Section " counter(section) ". ";
    }
    
    h2::before {
      counter-increment: subsection;
      content: counter(section) "." counter(subsection) " ";
    }
    </style>
    </head>
    <body>
    
    
    <h1>HTML 教程:</h1>
    <h2>HTML 教程</h2>
    <h2>CSS 教程</h2>
    
    <h1>Scripting 教程:</h1>
    <h2>JavaScript</h2>
    <h2>VBScript</h2>
    
    <h1>XML 教程:</h1>
    <h2>XML</h2>
    <h2>XSL</h2>
    
    <p><b>注意:</b> IE8 需要指定 !DOCTYPE 才可以支持该属性。</p>
    
    </body>
    </html>
    View Code

    3、列表计数器

    ①知识点:

        1、在ol这个标签里面直接创立计数器

        2、注意了,在给li前面添加序号的,counters函数里面除了要引入计数器的话,还要引入一个符号,这个用的是“。” 主要是为了可以把序号分割开来

          

      li::before{
                counter-increment: section;
                content: counters(section,".") " ";
            }

    ②完整代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            ol{
                counter-reset: section;
                list-style-type: none;
            }
            li::before{
                counter-increment: section;
                content: counters(section,".") " ";
            }
        </style>
    </head>
    <body>
        <ol>
            <li>item</li>
            <li>item   
            <ol>
              <li>item</li>
              <li>item</li>
              <li>item
              <ol>
                <li>item</li>
                <li>item</li>
                <li>item</li>
              </ol>
              </li>
              <li>item</li>
            </ol>
            </li>
            <li>item</li>
            <li>item</li>
          </ol>
          
          <ol>
            <li>item</li>
            <li>item</li>
          </ol>
          
          <p><b>注意:</b> IE8 需要指定 !DOCTYPE 才可以支持该属性。</p>
          
    </body>
    </html>
    View Code

          

  • 相关阅读:
    面向对象基础小结
    异常应用场景
    集合应用场景1:迭代器
    集合应用场景2——数据结构
    华为ce交换机 Bridge-Domain NVE
    linux 内核内置模块
    linux bridge 转发 ip
    iptables nat&conntrack
    loopback
    配置集中式网关部署方式的VXLAN示例(静态方式)
  • 原文地址:https://www.cnblogs.com/SCAU-gogocj/p/13089667.html
Copyright © 2020-2023  润新知