西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > 开发教程 > HTML/CSS教程 >

css中伪类元素:before和:after

时间:2016-02-29 01:15来源:未知 作者:好模板 点击:
关于伪类元素:before和:after 1、:before和:after简例介绍 :before和:after的作用就是在指定的元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素,最基本的用

关于伪类元素:before和:after

1、:before和:after简例介绍

:before和:after的作用就是在指定的元素 内容 (而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素,最基本的用法如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title></title>
    <style>
        #pid:before {
            content: "^^";
            color: red;
        }
        #pid:after {
            content: "!";
            color: red;
        }
    </style>
</head>
<body>
    <p id="pid">welcome to my home</p>
</body>
</html>

这段代码会在#pid元素内容之前插入一个'^^',以及在内容之后添加一个'!',插入的行内元素是作为#pid的子元素,效果如下:

如果没有content属性,伪类元素将没有任何作用。

但是可以指定content为空,插入的内容默认是一个行内元素,并且在HTML源代码中无法看到,这就是为什么称之为 伪类元素 的理由,所以也就 无法通过DOM对其进行操作 。

除了插入文字内容之外,还可以插入图片等。

2、:before和:after惊人用法

在这里展示一个常用的场景,很多人写过如下清除浮动的代码:

<div id="container">
    <div class="content-left">this is left content.</div>
    <div class="content-right">this is right content.</div>
    <div class="clear"></div>
</div>

对应的css代码如下:
.content-left{
    float: left;
    width: 150px;
     font-weight:bold;">red;
}
.content-right{
    float: right;
    width: 450px;
    font-weight:bold;">yellow;
}
.clear{
    clear: both;
}

为了清除上面的浮动,多添加了一个<div>元素,并给此<div>元素添加了clear样式,这种做法破坏了HTML5的语义化原则,因此应对css样式进行修改,添加如下代码:
.clearfix{
      zoom: 1;
  }
  .clearfix:before,
  .clearfix:after{
      display: table;
      content: "";
  }
.clearfix:after{
    clear: both;
 }
只要在父容器上应用clearfix这个类即可实现清除浮动。
(责任编辑:好模板)
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容