您现在的位置是:网站首页> 编程资料编程资料
三个CSS技巧你应该知道深入理解CSS定位与层叠纯css3绘制可爱的小猪猪样式效果源码GitHub倡导的CSS编写风格及文件目录部署指南CSS实现6种鼠标滑过按钮背景动画特效源码CSS自适应布局思路css三种方法实现div在浏览器水平居中使用CSS实现小三角形效果【附实例】CSS控制文本的长度 超过一行显示省略号的实现方法
2021-09-05
903人已围观
简介 你需要知道的三个CSS技巧,在CSS中用attr()显示HTML属性值,使用counter()在列表中自动添加序号,使用calc()做算术,感兴趣的小伙伴们可以参考一下
各种浏览器之间的竞争的白热化意味着越来越多的人现在开始使用那些支持最新、最先进的W3C Web标准的设备,以一种更具交互性的方式来访问互联网。这意味着我们终于能够利用更强大更灵活的CSS来创造更简洁,更好维护的浏览器前端代码。现在让我们来看一看一些也许你还不知道的让人兴奋的CSS 功能。
在CSS中用attr()显示HTML属性值
attr()功能早在CSS 2.1标准中就已经出现,但现在才开始普遍流行。它提供了一个巧妙的方法在CSS中使用HTML标签上的属性,在很多情况下都能帮你省去了以往需要Javascript处理的过程。
要想使用这个功能,你需要用到三种元素:一个:before 或 :after CSS伪类样式, .content属性,和一个带有你想使用的HTML属性名称的attr()表达式。例如,想去显示
标题上的data-prefix属性的值,你可以写成这样:CSS Code复制内容到剪贴板- h3:before {
- content: attr(data-prefix) " ";
- }
-
-
"Custom prefix">This is a heading
-
- h3:before {
- content: attr(data-prefix) " ";
- }
-
"Custom prefix">This is a heading
显然,这个例子并没有展示它有多大用处,只是展示了它的基本用法。让我们来试一个更有用的例子,attr()的一个极好的应用就是当用户打印页面时将页面链接显示出来。为了实现这个,你可以这样写:
- @media print {
- a:after {
- content: " (link to " attr(href) ") ";
- }
- }
- "http://example.com">Visit our home page
一旦你知道了这个技巧,你就会吃惊于很多时候它能给你的工作带来的方便!
提示:在新版的CSS3标准中,attr()功能被扩展,可以用在各种CSS标记中。
使用counter()在列表中自动添加序号
另外一个在CSS 2.1在就已经支持的功能是counter(),使用它,你能方便的在页面标题,区块和其它各种连续出现的页面内容上添加序号。有了它,你就不必限制于只能使用
- 来实现这个效果,你可以更灵活的在页面上使用自定义数字序列。
- body {
- countercounter-reset: heading;
- }
- h4:before {
- countercounter-increment: heading;
- content: "Heading #" counter(heading) ".";
- }
- .parent {
- width: 100%;
- border: solid black 1px;
- position: relative;
- }
- .child {
- position: absolute;
- left: 100px;
- width: calc(90% - 100px);
- background-color: #ff8;
- text-align: center;
- }
关键就是它真的很简单:在:before伪类里的content属性加入counter():
如果你想知道更多关于这个counter归零和自增方法的知识,请参考关于这个主题的Mozilla
Developer Network页面。里面有个极好的如何使用嵌套counter的例子。
使用calc()做算术
最后,但不是最不重要的,让我们来说说calc()功能。这个函数能让你执行简单的算术计算,例如计算元素的长宽,免去了你写不易维护的Javascript代码。这个函数支持所有简单的基本算术运算,包括加减乘除。
比方说,你想创建一个元素,使它的宽度占满它的父元素,但还要留出一部分像素宽做其它用处:
我们可以越来越清楚的发现,CSS已经成熟到在某些方法可以替代javascript,极大的简化了web开发人员的工作。
抓紧利用这些技巧吧,一定会有不一定的效果。
相关内容
- GitHub倡导的CSS编写风格及文件目录部署指南使用CSS和Bootstrap图标制作上下跳动的指示箭头动画效果纯CSS制作各种各样的网页图标(三角形、暂停按钮、下载箭头、加号等)CSS制作箭头图标代码(圆,三角形,椭圆) css实现的交互小三角箭头图标纯CSS实现箭头、气泡让提示功能具有三角形图标CSS多级数字序号的目录列表(2.2.1. 2.2.2 列表序号)完美解决调用上级目录中的css样式文件的路径问题CSS拾遗之箭头,目录,图标的实现代码
- stylus css 框架使用方法深入解析浅析CSS实现水平垂直同时居中的5种思路CSS3近阶段篇之酷炫的3D旋转透视 图解CSS中position属性的定位用法使用CSS的position属性控制页面布局的入门教程解析CSS编写中的属性优先级问题详解CSS中的伪类与伪元素及二者间的区别关于css兼容性问题及一些常见问题汇总
- 浅析CSS实现水平垂直同时居中的5种思路利用CSS3的flexbox实现水平垂直居中与三列等高布局Flexbox制作CSS布局实现水平垂直居中的简单实例让DIV水平垂直居中的两种完美方法推荐CSS解决页面图片水平垂直居中问题的方法全面总结使用CSS实现水平垂直居中效果的方法CSS定位“十字架”之水平垂直居中HTML对于元素水平垂直居中的探讨关于html水平垂直居中的问题小结DIV或者DIV里面的图片水平与垂直居中的方法
- CSS3近阶段篇之酷炫的3D旋转透视 CSS3让登陆面板3D旋转起来CSS3 3D旋转rotate效果实例介绍 CSS3实现的一款迷人3D木块旋转动画CSS3实现酷炫的3D旋转透视效果
- 使用CSS的position属性控制页面布局的入门教程CSS position:absolute全面了解CSS 定位之position全面了解使用CSS3的ruby-position固定注音位置的用法示例总结CSS的position定位属性在使用的一些重点图解CSS中position属性的定位用法css position 设置元素的定位方式详解
- 解析CSS编写中的属性优先级问题详解CSS中的选择器优先级顺序详解CSS中的选择器优先级及样式层叠问题解决CSS z-index 层级关系优先级的概念CSS中的各种选择器与样式优先级小结四种CSS常用的选择器使用方法和注意事项css优先级计算方法(推荐)
- 详解CSS中的伪类与伪元素及二者间的区别
- CSS3的first-child选择器实战攻略浅析CSS实现水平垂直同时居中的5种思路CSS3近阶段篇之酷炫的3D旋转透视 图解CSS中position属性的定位用法使用CSS的position属性控制页面布局的入门教程解析CSS编写中的属性优先级问题详解CSS中的伪类与伪元素及二者间的区别css 各浏览器下的背景色渐变【代码】css文件中的样式类被覆盖,js文件中的变量未定义问题CSS实现文字环绕图片效果stylus css 框架使用方法深入解析
- css 各浏览器下的背景色渐变【代码】CSS背景色渐变写法兼容ie6至ie9css3 给背景设置渐变色的方法
- css文件中的样式类被覆盖,js文件中的变量未定义问题通过CSS变量修改样式的方法示例你真的需要了解一下CSS变量 var()的用法CSS变量对JS交互组件开发带来的提升与变革示例代码详解