CSS3 属性值中的 Content 和 Attr 的用法介绍

发布于 2018-01-14 12:38:09 字数 1250 浏览 2668 评论 0

CSS3 的出现使得样式表的功能变得越来越强大,而某种意义上也可以说它让我们开发起来越来越容易了。CSS3 里虽然有很多重量级的新特征出现,例如 transitions、animations 和 transforms,但有一个特征虽然不是那么抢眼,但却是非常的有用,它就是 content 和 attr 表达式,它们能在你的页面下面悄悄的使用 CSS 来生成内容,下面让我们看看 attr 和 content 如何相互配合产生神奇效果的。

CSS3 属性值中的 Content 和 Attr 的用法介绍

基本 Content 用法

content 属性能让程序员使用CSS往页面元素里填写内容:

.myDiv:after {
    content:"我是一个使用*content*属性生产的静态文字";
}

请注意,如果想让伪元素 :after 绝对定位,你必须对你的 div 设置 position: relative。

Content 和 Attr 配合使用

如果你不想把 content 内容在CSS里写死,那你可以使用 attr 表达式来从页面元素中动态的获取内容:

/*<div data-line="1"></div>*/
div[data-line]:after { 
    content: attr(data-line); /* 属性名称上不要加引号! */
}

attr 属性通常和自定义属性 data- 配合使用,因为传统的其它属性虽然也能存值,但通常不适合存放表达性文字。

Content 字符串连接操作

这种字符串连接很像常规编程语言了:

/*<div data-line="1"></div>*/
div[data-line]:after{
    content: "[line " attr(data-line) "]";
}

还需要用 JavaScript 里拼装字符串吗?CSS3 里就能完成这些,是不是感觉 CSS3 可以部分的替代 Javascript 了! attr 的动态生成页面内容的能力着实是一件让人兴奋的事情。你实际上可以用它配合 content 对页面的很多其他元素和属性进行操作。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

文章
评论
84963 人气
更多

推荐作者

夢野间

文章 0 评论 0

doggiejohn

文章 0 评论 0

就此别过

文章 0 评论 0

初见终念

文章 0 评论 0

qq_rvKjBH

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文