最近在看张鑫旭的《css世界》, 看了这个书感受打开了css世界的大门. 建议前端工程师人手一本php
针对content 字符内容生成 这一技术用的最多的应该就是配合@font-face实现字体图标了吧. 由于http://www.iconfont.cn 就运用了这一技术css
@font-face { font-family: 'iconfont'; /* project id 243181 */ src: url('//at.alicdn.com/t/font_243181_20ev5oif1gduz0k9.eot'); src: url('//at.alicdn.com/t/font_243181_20ev5oif1gduz0k9.eot?#iefix') format('embedded-opentype'), url('//at.alicdn.com/t/font_243181_20ev5oif1gduz0k9.woff') format('woff'), url('//at.alicdn.com/t/font_243181_20ev5oif1gduz0k9.ttf') format('truetype'), url('//at.alicdn.com/t/font_243181_20ev5oif1gduz0k9.svg#iconfont') format('svg'); } .icon-search:before { font-size: 24px; font-family: iconfont; content: "\e657"; color: #000; }
进入iconfont以后默认是Unicode 点击Font class 红线里面就是链接了, 能够直接打开看到源码. 与上面所写无二.html
在上面:before中content中的字符是Unicode, 由此延伸出下一个功能 动态加载页面内容的时候时经常使用到"正在加载中..."这几个字, 能够利用这一技术实现动态...前端
html 正在加载中<dot>...</dot> css dot { display: inline-block; height: 1em; line-height: 1; text-align: left; vertical-align: -.25em; overflow: hidden; } dot { display: block; content: "...\a..\a."; white-space: pre-wrap; animation: dot 3s infinite step-start both; } @keyframes dot { 33% { transform: translateY(-2em) } 66% { transform: translateY(-1em) } }
效果能够查看张鑫旭博客查看, ie6~ie9是静态的, 支持animation动画的浏览器都是动态的.
动画原理为: 插入3行内容是 3个点、2个点和一个点, 而后经过transform控制垂直位置.
这里须要注意的有这么几点浏览器
对这几个答案一一作回答:前端工程师
content开启闭合符号生成
CSS中有个quotes属性, 能够指定open-quote和close-quote字符具体是什么. 例如, 针对不一样语言指定不一样的先后符号:svg
<p lang="ch"><q>css世界是一本好书</q></p> <p lang="en"><q>css世界是一本好书</q></p> <p lang="no"><q>css世界是一本好书</q></p> /* 为不一样语言指定引号 */ :lang(ch) > q { quotes: ''' '''; } :lang(en) > q { quotes: '"' '"'; } :lang(no) > q { quotes: '<' '>'; } /* 在q标签的先后插入引号 */ q:before { content: open-quote; } q:after { content: close-quote; }
在此基础上演变动多好玩的:字体
.ask { quotes: '提问: "' '"'; } .answer { quotes: '回答: "' '"'; } .ask:before, .answer:before { content: open-quote; } .ask:after, .answer:after { content: close-quote; } <p class="ask">你问我爱你有多深?</p> <p class="answer">月亮表明个人心</p>
content attr属性值内容生成
这个功能比较经常使用, 做者经常使用, 我也很经常使用.动画
img::after { /* 生成alt信息 */ content: attr(alt); }
除了原生属性, 自定义的HTML属性也是能够的url
.icon:before { content: attr(data-title); }
须要注意的是, attribute中的属性名不要加引号!