原理

  1. 在css中如果值为0,可以省略单位。
  2. 在css应用场景中,有可能是多端多人维护。即可能维护的人有A及B及C…,应用场景中有电脑端及手机端及小程序及打印机之类的。

结论

个人认为不要省略单位,不要留下后续维护的坑。多端多设备时,最好当时就想好用什么单位更合适,如果想不到,用rem或px也行,反正实际表现是一样的,后续别人维护,自然会去改单位。

说明

  1. 从程序员的角度来看css单位中, 0 == null == none == false == 不写值 ,这意味着如果指定为0代表没有或无。以边框举例,如果指定边框宽度为0代表没有边框;但如果指定一个边框宽度为0px,那么将创建一个0px的边框。两者表现一致,但含义不一致,但一般默认的css样式就是无,之所以要特意改为零值,往往是因为引入的第三方代码或全局代码中,设置了一个不为零值的css样式。有单位时更容易让人理解为当前需求要求为无边框但用了0px来实现该效果,后续还有可能要动这个边框。
  2. 谷歌浏览器调试中,如果有单位,可以用向上键及向下键细调高度。如果是0,那么就不能直接细调了。
  3. 当前css样式的人大概是你自己,并且此时你大概知道后续的需求或改进的大概的单位数量级。所以你写了单位,别人后续可以直接在你当前的单位上细调,而不用再去想该用什么单位。也就是说,在你写自己负责的代码时,往往没人比你更懂对应的业务,更利于维护。并且,后面如果你忘记了,也更容易想起。
  4. 省略单位更容易出错,因为以后的更改可能会意外地忽略该单位。
  5. 省略单位不太符合文档中其他地方的非零元素,因为可省的一般只限于长度,时间、角度等等有可能就不可以省略。不省略单位,更容易让人知道要改动的值。同时代码更规范,别人不用特意去记长度的零值可以省略单位这一个小知识细节。

来源

  1. CSS 单位;
  2. css长度单位讲解 (超详细);
  3. 当在CSS中指定0值时,应该明确标记单位还是省略?;
  4. 遇到 0px 需不需要写单位 px ?;
  5. 解决CSS3transition-delay属性默认值0不带单位失效的问题;
  6. 不要省略CSS中零值的单位!;

2021-10-25 css中零值0后面是否要省略单位的更多相关文章

  1. cordova 导致css中绝对定位top:0会被顶到视图之外

    IOS7+ webview全屏导致状态栏悬浮在页面上 解决方案:打开 ios项目/classes/MainViewController.m,修改viewWillAppear方法 - (void)vie ...

  2. float 浮点数与零值0比较大小

    float x: 千万不要写x==0; 写出float x 与“零值”比较的if语句——一道面试题分析 写出float  x 与“零值”比较的if语句 请写出 float  x 与“零值”比较的 if ...

  3. float 浮点数与零值0比较大小 ZZ

    float x: 千万不要写x==0; 写出float x 与“零值”比较的if语句——一道面试题分析 写出float  x 与“零值”比较的if语句 请写出 float  x 与“零值”比较的 if ...

  4. CSS中设置margin:0 auto; 水平居中无效的原因分析

    很多初学制作网页的朋友,可能会遇到的一个常见问题,就是在CSS中加了margin:0 auto;却没有效果,不能居中的问题,margin:0 auto;的意思就是:上下边界为0,左右根据宽度自适应,其 ...

  5. 关于CSS中text-decoration值没有替换而是累积的疑问

    做了个实验: <!DOCTYPE html> <html> <head> <title>BaiDuTest.html</title> < ...

  6. 山东理工大学第七届ACM校赛-最大收益问题 分类: 比赛 2015-06-26 10:25 51人阅读 评论(0) 收藏

    最大收益问题 Time Limit: 2000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 铁牌狗最近迷上了一款游戏,但铁牌狗实在是太笨了,他还是要请求你的帮助. 有 ...

  7. css中属性值继承小解

    继承:html元素可以从父元素那里继承一部分css属性,即使当前元素没有定义该属性. 1.css可以和不可以继承的属性 不可继承的:display.margin.border.padding.back ...

  8. 日常Java 2021/10/25

    ArrayList存储数字 import java.util.ArrayList; public class Arr_test { public static void main(String[] a ...

  9. 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 ...

  10. css中font-size为0的妙用(消除内联元素间的间隔)

    前言 <div> <input type="text"> <input type="button" value="提交& ...

随机推荐

  1. [转帖]通过拓扑 label 进行副本调度

    https://docs.pingcap.com/zh/tidb/stable/schedule-replicas-by-topology-labels#%E5%9F%BA%E4%BA%8E%E6%8 ...

  2. Jmeter学习之四_kingbaseV8R6数据库的简单验证

    Jmeter学习之四_kingbaseV8R6数据库的简单验证 背景 周一没去报道, 因为我忘记体检了... 继续在家进行学习提高自己. jmeter周末时开始看的. 今天想着继续研究一下对数据库的处 ...

  3. 【转帖】nginx变量使用方法详解-1

    https://www.diewufeiyang.com/post/575.html Nginx 的配置文件使用的就是一门微型的编程语言,许多真实世界里的 Nginx 配置文件其实就是一个一个的小程序 ...

  4. [转帖]利用Python调用outlook自动发送邮件

    ↓↓↓欢迎关注我的公众号,在这里有数据相关技术经验的优质原创文章↓↓↓ 使用Python发送邮件有两种方式,一种是使用smtp调用邮箱的smtp服务器,另一种是直接调用程序直接发送邮件.而在outlo ...

  5. [转帖]linux内存挂载

    1.主要功能 在linux中,为了提高读写速度,可以将内存挂载到目录,常见的文件格式有tmpfs和ramfs. 2.挂载步骤 $ sudo mkdir /mnt/tmp $ sudo mkdir /m ...

  6. [转帖]CPU结构对Redis性能的影响

    文章系转载,便于分类和归纳,源文地址:https://wangkai.blog.csdn.net/article/details/111571446 CPU的多核架构和多CPU架构都会影响到Redis ...

  7. [转帖]计算机体系结构-cache高速缓存

    https://zhuanlan.zhihu.com/p/482651908 本文主要介绍了cache的基本常识.基本组成方式.写入方法和替换策略,在基本组成方式和替换策略两节给出了较为详细的硬件实现 ...

  8. Spring Boot 统一RESTful接口响应和统一异常处理

    一.简介 基于Spring Boot 框架开发的应用程序,大部分都是以提供RESTful接口为主要的目的.前端或者移动端开发人员通过调用后端提供的RESTful接口完成数据的交换. 统一的RESTfu ...

  9. elementui-自定表头和在input中遇见的问题

    第一个问题:无法关闭 弹出框 <el-table :data="tableData" style="width: 100%"> <el-tab ...

  10. 去除 i 标签的倾斜样式;如何引入本地的阿里字体图标

    去除 i 标签的倾斜样式 i{ font-style:normal; } 如何引入本地的阿里字体图标 将代码下载下来 当然你将下载下载来的资源有用的放在静态资源中 然后在 main.js 引入: ma ...