1.小三角样式

.tip{
    position:relative;
    display:inline-block;
    width:100px;
    margin:100px;
    padding:30px 20px;
    color:#fff;
    border:1px solid #666;
    border-radius:5px;
    background-color:rgba(0,153,51,1);
}
.tip:before{
    content:'';
    position:absolute;
    top:15px;
    left:-20px;
    border:10px solid #666;
    border-color:transparent #666 transparent transparent;
}
.tip:after{
    content:'';
    position:absolute;
    top:15px;
    left:-18px;
    border:10px solid rgba(0,153,51,1);
    border-color:transparent rgba(0,153,51,1) transparent transparent;
}
2.取消浮动

.float{
    border:1px solid #000;
    zoom:1; /*解决ie6,ie7浮动问题*/
}
.float:after{
    content:'';
    display:block;
    width:0;
    height:0;
    clear:both;
}
.fl{
    float:left;
    width:300px;
    height:200px;
    color:#fff;
    background:rgba(204,51,0,1);
}
.fr{
    float:right;
    width:300px;
    height:200px;
    color:#fff;
    background:rgba(0,102,102,1);
}

1.:after消除浮动,父元素需加zoom:1,建议使用,
2.在父元素的末尾加一个孩子,<div style="clear:both"></div>
3.在父元素中增加overflow:hidden; 不能和position配合使用,因为超出的尺寸的会被隐藏
4.在父元素中增加overflow:auto;前提是必须定义width 或 zoom:1,并且不能定义height
5.父元素一起浮动,不推荐使用
6.给父元素增加display:table,不建议使用
3.单选或复选

.simple{
    width:100px;
    height:20px;
    border:1px solid #000;
    line-height:20px;
    padding:10px;
    display:inline-block;
}
.simple input{
    display:none;
}
.simple label:before{
    content:'';
    display:inline-block;
    width:15px;
    height:15px;
    vertical-align:-2px;
    margin-right:5px;
    border:1px solid #000;
}
.simple input:checked + label:before{
    content:'';
    display:inline-block;
    width:15px;
    height:15px;
    background:rgba(255,51,0,1);
    vertical-align:-2px;
    margin-right:5px;
    border:1px solid #000;
}
.middle{
    display:inline-block;
    position:relative;
    overflow:hidden;
}
.middle input{
    display:none;
}
.middle label{
    padding:10px;
    display:inline-block;
    border:1px solid #000;
}
.middle input:checked + label{
    border:rgba(0,255,255,1) 1px solid ;
}
.middle input:checked + label:after{
    content:"";
    position:absolute;
    bottom:0px;
    right:0px;
    width:10px;
    height:10px;
    border-radius:10px 0 0 0;
    display:inline-block;
    background:#F03;
    color:#fff;
}
.hight{
    display:inline-block;
    position:relative;
}
.hight input{
    display:none;
}
.hight input + label:before{
    content:'';
    display:inline-block;
    width:48px;
    height: 24px;
    margin-right:10px;
    vertical-align:-6px;
    background:#e0e0e0;
    position:relative;
    border-radius:24px;
    transition:background 0.3s;
}
.hight input + label:after{
    content:'';
    display:inline-block;
    width:20px;
    height:20px;
    border-radius:20px;
    background:#fff;
    position:absolute;
    top:2px;
    left:2px;
    transition:left 0.32s;
}
.hight input:checked + label:before{
    background:rgba(153,0,153,1);
}
.hight input:checked+label:after{
    left:26px;
}
.diff{
    display:inline-block;
    position:relative;
}
.diff label{
    width:auto;
    height:48px;
}
.diff label input{
    display:none;
}
.diff label input + i{
    content:'';
    position:relative;
    width:48px;
    height:24px;
    border-radius:24px;
    background:#e0e0e0;
    display:inline-block;
    transition:background 0.3s;
}
.diff label input + i:after{
    content:"";
    position:absolute;
    top:2px;
    left:2px;
    display:inline-block;
    background:#fff;
    width:20px;
    height:20px;
    border-radius:20px;
    transition:left 0.3s;
}
.diff label input:checked + i{
    background:#0F0;
}
.diff label input:checked + i:after{
    left:26px;
}

:before与:after伪类的应用的更多相关文章

  1. 谈谈一些有趣的CSS题目(十)-- 结构性伪类选择器

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  2. CSS3 nth 伪类选择器

    考察下面的 HTML 代码片段: <div> <section>section 1</section> <section>section 2</s ...

  3. CSS权威指南之css声明,伪类,文本处理--(简要笔记一)

    1.css层叠的含义 后面的会覆盖前面的样式 2.每个元素生成一个框,也称盒.   3.替换元素和非替换元素. img如果不指定src的外部路径,该元素就没有意义.他由文档本身之外的一个图像文件来替换 ...

  4. CSS-用伪类制作小箭头(轮播图的左右切换btn)

    先上学习地址:http://www.htmleaf.com/Demo/201610234136.html 作者对轮播图左右按钮的处理方法一改往常,不是简单地用btn.prev+btn.next的图片代 ...

  5. 伪类before和after

     以你添加的元素为基础!在他的里面!也就是他的内容的前面或者后面添加东西!  如果原来的元素没有内容会出现什么情况?(伪类的宽和高和元素的相等)

  6. 解密jQuery内核 Sizzle引擎筛选器 - 位置伪类(一)

    本章开始分析过滤器,根据API的顺序来 主要涉及的知识点 jQuery的组成 pushStack方法的作用 sizzle伪类选择器 首页我们知道jQuery对象是一个数组对象 内部结构 jQuery的 ...

  7. 利用伪类:before&&:after实现图标库图标

    一.实现如下效果 二.代码实现思路 图案一源码 <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

  8. CSS笔记之伪类与伪元素

    伪类分为两种:UI伪类 与 结构化伪类 UI伪类:a:link{}    a:hover{}   a:active{}  a:visited{} input[type='text']:focus{} ...

  9. W3School-CSS 伪类 (Pseudo-classes) 实例

    CSS 伪类 (Pseudo-classes) 实例 CSS 实例 CSS 背景实例 CSS 文本实例 CSS 字体(font)实例 CSS 边框(border)实例 CSS 外边距 (margin) ...

  10. <a>链接的四个伪类顺序

    <a>元素的作用是可以创建一个链接,链接对应4个状态:未访问,已访问,鼠标悬停,鼠标点击瞬间. 为了给链接的4个状态应用样式,引入伪类的概念. 什么是伪类呢?简单点说,就是你没定义这个类, ...

随机推荐

  1. U盘装系统系列二—-如何设置U盘启动

    老毛桃U盘启动制作好之后,如何设置U盘启动呢?我的是华硕的电脑,开机后按F2进入BIOS设置(不同主板可能不一样,比如有的是按向下键或者Del键,可以在网上查下看看),按Tab键选中Boot:按向下键 ...

  2. develop process

    -f Option is dangerous, make sure that only do this on your own branch # When you starting coding at ...

  3. PHP程序员衰老后的下场

    长期从事编程活动的程序员都期望在50多岁时能爬到一个足够高的职位,或者能顺利的退休. 但我在这里讨论的可能是一个你还没有想过的问题:如果到那时你失业了呢? 50多岁时你的职业仕途会成为一个问题.如果你 ...

  4. Swift学习之常用UI的使用

    Swift学习之常用UI的使用 最近笔者在开始学习苹果最新的编程语言,因为笔者认为,苹果既然出了这门语言就绝对不会放弃,除非苹果倒闭了(当然这里知识一个玩笑). 所以在不久的将来,swift绝对是iO ...

  5. 从Lumia退役看为什么WP走向没落(从程序员与市场开发的角度,讲的真棒!)

    http://www.cnblogs.com/zhangkai2237/p/4856880.html

  6. NSIS检测操作系统x64还是x86的问题。

    想共同维护一个NSIS脚本文件的,不想搞两个版本的脚本文件了.开始想到了!if语句,没试过,不知道行不行得通.后来google了一下.可以用两个头文件搞定.参照下面链接 Reference: http ...

  7. BZOJ1671: [Usaco2005 Dec]Knights of Ni

    1671: [Usaco2005 Dec]Knights of Ni Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 175  Solved: 107[Su ...

  8. Cracking the coding interview 第二章问题及解答

    文章的缘由可以参考此篇文章.目前完成了第二章,代码放在github上,地址在此.问题的描述都在对应的代码文件中.其他的章节仍在在进行中. 如果代码有问题,欢迎指正,谢谢. yetuweiba

  9. 高效求幂取余 算法,复杂度 log(n)

    做TopCoder SRM 576 D2 L3 题目时,程序有个地方需要对一个数大量求幂并取余,导致程序运行时间很长,看了Editoral之后,发现一个超级高效的求幂并取余的算法,之前做System ...

  10. Linux的目录结构及其作用

    /bin bin是Binary的缩写.这个目录存放着最经常使用的命令. /boot这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件. /dev dev是Device(设备) ...