cssbackground(用 CSS background 实现刻度线的呈现)
类别:Web前端 浏览量:642
时间:2022-04-02 10:52:58 cssbackground
用 CSS background 实现刻度线的呈现有的时候,我们需要在网页中的进度条或某种度量计上呈现一条条的刻度线。例如这种:
简单的实现方式,大致有两种:一是用图片做背景,横向平铺线条图片;二是给每一块刻度区域平铺一个元素,然后用边线实现。身为一个“环保主义者”,这两种方式都不能让我满意。在看了 Lea Verou 的 CSS SECRETS 后,我受到了启发——可以用渐变背景的方式去实现。
原理很简单。最简单的颜色渐变是颜色 A 过渡到颜色 B,那么,如果将颜色 A 设置成透明色,将颜色 B 设置成刻度线颜色,不就可以搞出刻度线了吗:
li { background: linear-gradient(to right, transparent 99px, #fff 1px); background-size: 100px 100%; }
在以上例子中,我用 background-size 设定刻度区间(背景)宽度为 100px,其中透明色我给它 99px 宽,线条色(白)我给它 1px 宽,这样从透明色到线条色的渐变就会失去过渡效果,从而实现了 100px 宽的区间里只有最后 1px 是线条——刻度线就这样出来了。用 repeating-linear-gradient 同样可以实现,而且不需要设置 background-size,如下所示:
li { background: repeating-linear-gradient( 90deg, transparent, transparent 99px, #fff, #fff 100px); }
这个样式表示第一段渐变色从开始到 99px 都是透明色,第二段渐变色从 99px 到 100px 都是白色,之后按此设定循环。
总结
以上所述是小编给大家介绍的用 CSS background 实现刻度线的呈现,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
热门推荐
- vuephp后台开发框架(Vue+thinkphp5.1+axios实现文件上传)
- dedecms前台发布文章(dedecms随机调用文章数据方法汇总)
- mysql时间戳和datetime对比(mysql中 datatime与timestamp的区别说明)
- C#中ArrayList与Array的区别
- lnmp 自动化安装(LNMP系列教程之 设置301重定向的方法)
- python提供的四种基本数据类型(浅谈python的输入输出,注释,基本数据类型)
- SQL SERVER中与内存相关的计数器
- 创建自己的Visual Studio工程模板
- 什么是网页挂马,怎么防范网页被挂马
- sqlserver 查询锁(sqlserver:查询锁住sql以及解锁方法)