伪元素:before和:after的定义和基本用法
一、定义
:before 选择器在被选元素的内容前面插入内容。
:after 选择器在被选元素的内容后面插入内容。
二、使用
使用 content 属性来指定要插入的内容。它的有用的几个值:
1、[String] – 使用引号包括一段字符串,将会向元素内容中添加字符串。
示例: a:after { content: "↗"; }
2、attr() – 调用当前元素的属性,可以方便的比如将图片的 Alt 提示文字或者链接的 Href 地址显示出来。
示例:a:after { content:"(" attr(href) ")"; }
3、url() / uri() – 用于引用媒体文件。
示例:h3::before { content: url(logo.png); }
4、counter() – 调用计数器,可以不使用列表元素实现序号功能。
示例:h3:before { counter-increment: chapter; content: "Chapter " counter(chapter) ". " }
三、应用
1、文字提示
2、 清浮动
3、模拟float:center
4、实现一些小图标、小图形:比如五角星、搜索图标等等
5、列表序号
6、动画效果
比如:上海市政府网站内页各板块鼠标放上去边线左右移动显示效果
- /* panel */
- .panel {
- position: relative;
- overflow: hidden;
- margin-bottom: 20px;
- padding: 0 20px;
- border-radius: 0;
- -webkit-transition: all .15s ease-in-out;
- transition: all .15s ease-in-out;
- border: 0;
- }
- .panel:hover:after,
- .panel:hover:before {
- position: absolute;
- left: 0;
- right: 0;
- height: 1px;
- background: #bf0c0d;
- content: '';
- }
- .panel:hover:after {
- top: 0;
- animation:panel-top-solid 5s infinite alternate;
- -webkit-animation:panel-top-solid 5s infinite alternate ;
- -moz-animation:panel-top-solid 5s infinite alternate ;
- -o-animation:panel-top-solid 5s infinite alternate ;
- -ms-animation:panel-top-solid 5s infinite alternate ;
- }
- @keyframes panel-top-solid{
- 0% {left:0;}
- 50% { left: 100%;}
- 100% {left:0;}
- }
- @-webkit-keyframes panel-top-solid{
- 0% {left:0;}
- 50% { left: 100%;}
- 100% {left:0;}
- }
- @-moz-keyframes panel-top-solid{
- 0% {left:0;}
- 50% { left: 100%;}
- 100% {left:0;}
- }
- @-o-keyframes panel-top-solid{
- 0% {left:0;}
- 50% { left: 100%;}
- 100% {left:0;}
- }
- @-ms-keyframes panel-top-solid{
- 0% {left:0;}
- 50% { left: 100%;}
- 100% {left:0;}
- }
- .panel:hover:before {
- bottom: 0;
- animation:panel-bottom-solid 5s infinite alternate;
- -webkit-animation:panel-bottom-solid 5s infinite alternate ;
- -moz-animation:panel-bottom-solid 5s infinite alternate ;
- -o-animation:panel-bottom-solid 5s infinite alternate ;
- -ms-animation:panel-bottom-solid 5s infinite alternate ;
- }
- @keyframes panel-bottom-solid{
- 0% {right:0;}
- 50% { right: 100%;}
- 100% {right:0;}
- }
- @-webkit-keyframes panel-bottom-solid{
- 0% {right:0;}
- 50% { right: 100%;}
- 100% {right:0;}
- }
- @-moz-keyframes panel-bottom-solid{
- 0% {right:0;}
- 50% { right: 100%;}
- 100% {right:0;}
- }
- @-o-keyframes panel-bottom-solid{
- 0% {right:0;}
- 50% { right: 100%;}
- 100% {right:0;}
- }
- @-ms-keyframes panel-bottom-solid{
- 0% {right:0;}
- 50% { right: 100%;}
- 100% {right:0;}
- }
内容...
用户登录
还没有账号?
立即注册