《HTML的一些常见标签》

451 阅读10分钟

一、HTML是谁发明的?

        HTML的英文全称是 Hypertext Marked Language,即超文本标记语言。HTML是由Web的发明者 Tim Berners-Lee和同事 Daniel W. Connolly于1990年创立的一种标记语言,它是标准通用化标记语言SGML的应用。用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平台(如UNIX, Windows等)。使用HTML语言,将所需要表达的信息按某种规则写成HTML文件,通过专用的浏览器来识别,并将这些HTML文件“翻译”成可以识别的信息,即现在所见到的网页。

二、HTML 起手:

Emmet感叹号


三、常用的表章节的标签:

  1. h1~h6    :HTML 提供了6个标签,用来表示文章的标题。按照标题的等级,一共分成六级。
    • <h1>:一级标题
    • <h2>:二级标题
    • <h3>:三级标题
    • <h4>:四级标题
    • <h5>:五级标题
    • <h6>:六级标题
  2. section    :表示一个含有主题的独立部分,通常用在文档里面表示一个章节,比如<article>可以包含多个<section><section>总是多个一起使用,一个页面不能只有一个<section>

    <article>
      <h1>文章标题</h1>
      <section>
        <h2>第一章</h2>
        <p>...</p>
      </section>
      <section>
        <h2>第二章</h2>
        <p>...</p>
      </section>
    </article>

  3. article    :<article>标签表示页面里面一段完整的内容,即使页面的其他部分不存在,也具有独立使用的意义,通常用来表示一篇文章或者一个论坛帖子。它可以有自己的标题(<h1><h6>)。

    <article>
      <h2>文章标题</h2>
      <p>文章内容</p>
    </article>

  4. aside    :<aside>标签用来放置与网页或文章主要内容间接相关的部分。网页级别的<aside>,可以用来放置侧边栏,但不一定就在页面的侧边;文章级别的<aside>,可以用来放置评论或注释。

    <body>
      <main>主体内容</main>
      <aside>侧边栏</aside>
    </body>

  5. main    :<main>标签表示页面的主体内容,一个页面只能有一个<main>

    <body>
    <header>页眉</header>
    <main>
      <article>文章</article>
    </main>
    <aside>侧边栏</aside>
    <footer>页尾</footer>
    </body>

  6. header    :<header>标签可以用在多个场景,既可以表示整个网页的头部,也可以表示一篇文章或者一个区块的头部。如果用在网页的头部,就称为“眉页“。网站导航和搜索栏通常会放在<header>里面。

    <header>
      <h1>公司名称</h1>
      <ul>
        <li><a href="/home">首页</a></li>
        <li><a href="/about">关于</a></li>
        <li><a href="/contact">联系</a></li>
      </ul>
      <form target="/search">
        <input name="q" type="search" />
        <input type="submit" />
      </form>
    </header>
  7. footer    :<footer>标签表示网页、文章或章节的尾部。如果用于整张网页的尾部,就称为“页尾”,通常包含版权信息或者其他相关信息。

    <body>
      <footer>
        <p>© 2018 xxx 公司</p>
      </footer>
    </body>

四、全局属性

  1. id    :id属性是元素在网页内的唯一标识符。比如,网页可能包含多个<p>标签,id属性可以指定每个<p>标签的唯一标识符。下面代码中,三个<p>标签具有不同的id属性,因此可以区分。id属性的值必须是全局唯一的,同一个页面不能有两个相同的id属性。另外,id属性的值不得包含空格。id属性的值还可以在最前面加上#,放到 URL 中作为锚点,定位到该元素在网页内部的位置。比如,用户访问网https://foo.com/index.html#bar的时候,浏览器会自动将页面滚动到bar的位置,让用户第一眼就看到这部分内容。

    <p id="p1"></p>
    <p id="p2"></p>
    <p id="p3"></p>

  2. class    :class属性用来对网页元素进行分类。如果不同元素的class属性值相同,就表示它们是一类的。

    <p class="para"></p>
    <p></p>
    <p class="para"></p>

  3. title    :title属性用来为元素添加附加说明。大多数浏览器中,鼠标悬浮在元素上面时,会将title属性值作为浮动提示,显示出来。

    <div title="版权说明">
      <p>本站内容使用创意共享许可证,可以自由使用。</p>
    </div>

  4. tabindex    :网页通常使用鼠标操作,但是某些情况下,用户可能希望使用键盘,或者只有键盘可以用。因此,浏览器允许使用 Tab 键,遍历网页元素。也就是说,只要不停按下 Tab 键,网页的焦点就会从一个元素转移到另一个元素,选定焦点元素以后,就可以进行下一步操作,比如按下回车键访问某个链接,或者直接在某个输入框输入文字。

    这里就有一个问题,按下 Tab 键的时候,浏览器怎么知道跳到哪一个元素。HTML 提供了tabindex属性,解决这个问题。它的名字的含义,就是 Tab 的顺序(index)。

    tabindex属性的值是一个整数,表示用户按下 Tab 键的时候,网页焦点转移的顺序。不同的属性值有不同的含义。

    • 负整数:该元素可以获得焦点(比如使用 JavaScript 的focus()方法),但不参与 Tab 键对网页元素的遍历。这个值通常是-1
    • 0:该元素参与 Tab 键的遍历,顺序由浏览器指定,通常是按照其在网页里面出现的位置。
    • 正整数:网页元素按照从小到大的顺序(1、2、3、……),参与 Tab 键的遍历。如果多个元素的tabindex属性相同,则按照在网页源码里面出现的顺序遍历。

      <p tabindex="0">这段文字可以获得焦点。</p>

  5. style    :style属性用来指定当前元素的 CSS 样式。

    <p style="color: red;">hello</p>

  6. hidden    :hidden是一个布尔属性,表示当前的网页元素不再跟页面相关,因此浏览器不会渲染这个元素,所以就不会在网页中看到它。

    <p hidden>本句不会显示在页面上。</p>

  7. contenteditable    :HTML 网页的内容默认是用户不能编辑,contenteditable属性允许用户修改内容。它有两个可能的值。

    • true或空字符串:内容可以编辑
    • false:不可以编辑

      <p contenteditable="true">
      鼠标点击,本句内容可修改。
      </p>

五、常用的内容标签

  1. em    :<em>是一个行内标签,表示强调(emphasize),浏览器会以斜体显示它包含的内容。

    <p>我们<em>已经</em>讨论过这件事情了。</p>

  2. div    :<div>是一个通用标签,表示一个区块(division)。它没有语义,如果网页需要一个块级元素容器,又没有其他合适的标签,就可以使用这个标签。

    <div class="main">
      <div class="article">
        <div class="title">
          <h1>文章标题</h1>
        </div>
      </div>
    </div>

  3. p    :<p>标签是一个块级元素,代表文章的一个段落(paragraph)。不仅是文本,任何想以段落显示的内容,比如图片和表单项,都可以放进<p>元素。

    <p>hello world</p>

  4. hr    :<hr>用来在一篇文章中分隔两个不同的主题,浏览器会将其渲染为一根水平线。该标签是单独使用的,没有闭合标签。

    <p>第一个主题</p>
    <hr>
    <p>第二个主题</p>

  5. <pre>是一个块级元素,表示保留原来的格式(preformatted),即浏览器会保留该标签内部原始的换行和空格。浏览器默认以等宽字体显示标签内容。

    <pre>hello
    
       world</pre>

  6. strong   :<strong>是一个行内元素,表示它包含的内容具有很强的重要性,需要引起注意。浏览器会以粗体显示内容。

    <p>开会时间是<strong>下午两点</strong>。</p>

  7. code    :<code>标签是一个行内元素,表示标签内容是计算机代码,浏览器默认会以等宽字体显示。

    <code>alert()</code>的作用是让网页弹出一个提示框。    

  8. ol    :<ol>标签是一个有序列表容器(ordered list),会在内部的列表项前面产生数字编号。列表项的顺序有意义时,比如排名,就会采用这个标签。<ol>标签内部可以嵌套<ol>标签或<ul>标签,形成多级列表。

    <ol>
      <li>列表项 A</li>
      <li>列表项 B
        <ol>
          <li>列表项 B1</li>
          <li>列表项 B2</li>
          <li>列表项 B3</li>
        </ol>
      </li>
      <li>列表项 C</li>
    </ol>

  9. ul    :<ul>标签是一个无序列表容器(unordered list),会在内部的列表项前面产生实心小圆点,作为列表符号。列表项的顺序无意义时,采用这个标签。

    <ul>
      <li>列表项 A</li>
      <li>列表项 B</li>
      <li>列表项 C</li>
    </ul>

  10. li    :<li>表示列表项,用在<ol><ul>容器之中。有序列表<ol>之中,<li>有一个value属性,定义当前列表项的编号,后面列表项会从这个值开始编号。

    <ol>
      <li>列表项 A</li>
      <li value="4">列表项 B</li>
      <li>列表项 C</li>
    </ol>

  11. dl,dt,dd    :<dl>标签是一个块级元素,表示一组术语的列表(description list)。术语名(description term)由<dt>标签定义,术语解释(description detail)由<dd>标签定义。<dl>常用来定义词汇表。

    <dl>
      <dt>CPU</dt>
      <dd>中央处理器</dd>
    
      <dt>Memory</dt>
      <dd>内存</dd>
    
      <dt>Hard Disk</dt>
      <dd>硬盘</dd>
    </dl>

<dt><dd>都是块级元素,<dd>默认会在<dt>下方缩进显示。上面代码的默认渲染结果如下。

CPU
  中央处理器

Memory
  内存

Hard Disk
  硬盘

多个术语(<dt>)对应一个解释(<dd>),或者多个解释(<dd>)对应一个术语(<dt>),都是合法的。

<dl>
  <dt>A</dt>
  <dt>B</dt>
  <dd>C</dd>

  <dt>D</dt>
  <dd>E</dd>
  <dd>F</dd>
</dl>

上面代码中,AB有共同的解释C,而D有两个解释EF