2021-10-25 css中零值0后面是否要省略单位
原理
- 在css中如果值为0,可以省略单位。
- 在css应用场景中,有可能是多端多人维护。即可能维护的人有A及B及C…,应用场景中有电脑端及手机端及小程序及打印机之类的。
结论
个人认为不要省略单位,不要留下后续维护的坑。多端多设备时,最好当时就想好用什么单位更合适,如果想不到,用rem或px也行,反正实际表现是一样的,后续别人维护,自然会去改单位。
说明
- 从程序员的角度来看css单位中, 0 == null == none == false == 不写值 ,这意味着如果指定为0代表没有或无。以边框举例,如果指定边框宽度为0代表没有边框;但如果指定一个边框宽度为0px,那么将创建一个0px的边框。两者表现一致,但含义不一致,但一般默认的css样式就是无,之所以要特意改为零值,往往是因为引入的第三方代码或全局代码中,设置了一个不为零值的css样式。有单位时更容易让人理解为当前需求要求为无边框但用了0px来实现该效果,后续还有可能要动这个边框。
- 谷歌浏览器调试中,如果有单位,可以用向上键及向下键细调高度。如果是0,那么就不能直接细调了。
- 当前css样式的人大概是你自己,并且此时你大概知道后续的需求或改进的大概的单位数量级。所以你写了单位,别人后续可以直接在你当前的单位上细调,而不用再去想该用什么单位。也就是说,在你写自己负责的代码时,往往没人比你更懂对应的业务,更利于维护。并且,后面如果你忘记了,也更容易想起。
- 省略单位更容易出错,因为以后的更改可能会意外地忽略该单位。
- 省略单位不太符合文档中其他地方的非零元素,因为可省的一般只限于长度,时间、角度等等有可能就不可以省略。不省略单位,更容易让人知道要改动的值。同时代码更规范,别人不用特意去记长度的零值可以省略单位这一个小知识细节。
来源
- CSS 单位;
- css长度单位讲解 (超详细);
- 当在CSS中指定0值时,应该明确标记单位还是省略?;
- 遇到 0px 需不需要写单位 px ?;
- 解决CSS3transition-delay属性默认值0不带单位失效的问题;
- 不要省略CSS中零值的单位!;
2021-10-25 css中零值0后面是否要省略单位的更多相关文章
- cordova 导致css中绝对定位top:0会被顶到视图之外
IOS7+ webview全屏导致状态栏悬浮在页面上 解决方案:打开 ios项目/classes/MainViewController.m,修改viewWillAppear方法 - (void)vie ...
- float 浮点数与零值0比较大小
float x: 千万不要写x==0; 写出float x 与“零值”比较的if语句——一道面试题分析 写出float x 与“零值”比较的if语句 请写出 float x 与“零值”比较的 if ...
- float 浮点数与零值0比较大小 ZZ
float x: 千万不要写x==0; 写出float x 与“零值”比较的if语句——一道面试题分析 写出float x 与“零值”比较的if语句 请写出 float x 与“零值”比较的 if ...
- CSS中设置margin:0 auto; 水平居中无效的原因分析
很多初学制作网页的朋友,可能会遇到的一个常见问题,就是在CSS中加了margin:0 auto;却没有效果,不能居中的问题,margin:0 auto;的意思就是:上下边界为0,左右根据宽度自适应,其 ...
- 关于CSS中text-decoration值没有替换而是累积的疑问
做了个实验: <!DOCTYPE html> <html> <head> <title>BaiDuTest.html</title> < ...
- 山东理工大学第七届ACM校赛-最大收益问题 分类: 比赛 2015-06-26 10:25 51人阅读 评论(0) 收藏
最大收益问题 Time Limit: 2000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 铁牌狗最近迷上了一款游戏,但铁牌狗实在是太笨了,他还是要请求你的帮助. 有 ...
- css中属性值继承小解
继承:html元素可以从父元素那里继承一部分css属性,即使当前元素没有定义该属性. 1.css可以和不可以继承的属性 不可继承的:display.margin.border.padding.back ...
- 日常Java 2021/10/25
ArrayList存储数字 import java.util.ArrayList; public class Arr_test { public static void main(String[] a ...
- Digital Roots—HDU1013 2016-05-06 10:25 85人阅读 评论(0) 收藏
Digital Roots Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- css中font-size为0的妙用(消除内联元素间的间隔)
前言 <div> <input type="text"> <input type="button" value="提交& ...
随机推荐
- [转帖]java -D参数设置系统属性无效问题及解决
https://www.jb51.net/article/271236.htm 这篇文章主要介绍了java -D参数设置系统属性无效问题及解决方案,具有很好的参考价值,希望对大家有所帮助.如有错误 ...
- kafka学习之五_多个磁盘的性能验证
kafka学习之五_多个磁盘的性能验证 背景 周末在家学习kafka 上午验证了grafana+kafka_exporter的监控 下午想着验证一把性能相关. kafka学习之三里面,有成套的脚本. ...
- 物理机和虚拟机上CPU睿频的区别
物理机和虚拟机上CPU睿频的区别 关于睿频 睿频是指当启动一个运行程序后,处理器会自动加速到合适的频率, 而原来的运行速度会提升 10%~20% 以保证程序流畅运行的一种技术. 一般max的睿频不能超 ...
- [转帖]Xargs用法详解
https://www.cnblogs.com/cheyunhua/p/8796433.html 1. 简介 之所以能用到这个命令,关键是由于很多命令不支持|管道来传递参数,而日常工作中有有这个必要, ...
- [转帖]MIPS和ARM授权差异引起的龙芯路线变迁
https://zhuanlan.zhihu.com/p/99807721 一.MIPS和ARM授权的异同 MIPS授权和ARM授权都分为处理器核授权(Core License)和架构授权(Archi ...
- [转帖]使用 Shell 运算进行进制转换 16进制转10进制
使用 Shell 运算进行进制转换 工作时候常常遇到一些问题,拿到的数字是16进制的,但是运算的时候是10进制的,shell可以很方便的处理这类的进制转换问题,一种情况是使用 Shell 运算把一个数 ...
- Intel 第四代志强可扩展SKU
- java 调优需要关闭的组建
- 基于Spring Cache实现Caffeine、jimDB多级缓存实战
作者: 京东零售 王震 背景 在早期参与涅槃氛围标签中台项目中,前台要求接口性能999要求50ms以下,通过设计Caffeine.ehcache堆外缓存.jimDB三级缓存,利用内存.堆外.jimDB ...
- git有关commit的命令
2.更改最近一次(本次) commit 的提交信息: 当我们执行 git add . git commit -m "0-0-1" 之后我们发现自己写的提交信息是不符合项目要求的,这 ...