如果有人发明时间机器,那应该将这些错误纠正,不然可把前端程序猿们给还惨了。大家一起看看都有哪些CSS规则应该完善。

(CSS 代码)

  • white-space: nowrap 应该 white-space: no-wrap

并且不应添加换行符行为 white-space

vertical-align不应该适用于表格单元格。

相反,CSS3对齐属性应存在于级别1中。

  • vertical-align: middle应该text-middle还是x-middle因为它不是真正在中间,这样的名字会更好地描述它做什么。

  • 应该计算百分比高度,fill-available而不是在自动情况下未定义。

表布局应该是理智的。

  • Box-sizing应该是border-box默认的。

  • background-size一个值应该复制它的值,而不是默认第二个值auto。同上translate()。

  • background-position和border-spacing(所有2轴属性)应首先采用* vertical *,以匹配4方向属性margin。

类似的4值短序margin应该逆时针方向

(因此内联起始值在块起始值之前)。

  • z-index应该调用z-order或者depth应该只对所有元素起作用(就像在flex项目上一样)。

  • word-wrap/ overflow-wrap不应该存在。相反,overflow-wrap应该是'white-space'上的关键字,如nowrap(no-wrap)。

  • 永远不应允许盒子的顶部和底部边缘自动折叠在一起,因为这是所有边缘折叠邪恶的根源。

    边缘部分崩溃而不是奇怪的规则来处理最小/最大高度?

  • (与其他非块一样,例如flex容器)应该形成伪堆叠上下文。

  • currentcolor关键字应该有一个破折号current-color。应该有一个可预测的颜色命名系统,而不是任意的X11名称。

  • border-radius本来应该的corner-radius。

  • 当设置相反的偏移属性(例如,左+右)时,绝对定位的替换元素应该伸展,而不是开始对齐。

  • hyphens应该调用该属性hyphenate。(这是hyphens因为XSL:FO人反对hyphenate。)

  • rgba()并且hsla()不应该存在,rgb()并且hsl() 应该获得可选的第四个参数(并且alpha值应该使用与R,G和B或S和L相同的格式)。

  • 后代组合应该是»和间接兄弟组合应该是++,所以选择者的ascii艺术之间有一些逻辑关系

  • *-blend-mode性能应刚去过的*-blend

  • unicode范围的语法应与CSS的其余部分一致,如u0001-u00c8。Unicode范围不应该有自己的标记化或令牌处理的单独的微合成语法。标记化黑客需要使选择器(例如,u + a)处理作为unicode范围标记的事物,或使unicode范围处理其他大范围的标记(数字和维度有和没有科学记数法,标识符,+)都很可怕

  • font-family应该要求引用字体名称(就像来自“外部” CSS的所有其他值一样)。处理不带引号的字体名称的规则使解析变得font愚蠢,因为它需要font-size消除歧义的值。

  • 对于弹性基础与宽度/高度的关系,Flexbox应该不那么疯狂了。也许:如果宽度/高度是auto,使用flex-basis; 否则,坚持宽度/高度作为不灵活的大小。(这也使得最小/最大宽度/高度行为超出了通用定义。)

  • :empty应该是:void,并且:empty应该选择仅包含空格的项目在规范中修复,等待实现检查Web-compat ...

  • table-layout: fixed; width: auto 应该导致具有固定布局列的填充表。

  • “文本方向”应该具有upright初始值(给定“写入模式”的最新更改)。

  • @import规则要求(a)始终命中网络,除非您指定缓存头,并且(b)为每次导入构造新的CSSStyleSheet对象,即使它们是相同的。它应该有更积极的基于URL的重复数据删除并允许共享样式表对象。

  • 选择者有可怕的未来证明。我们应该拆分顶级逗号,只忽略未知/无效段,而不是整个事件。

  • :link应该一直有:any-link语义。

  • flex速记(和flex-shrink和flex-growlonghands)应该接受fr单元,而不是裸露数字来表示挠曲馏分。

  • display应该调用该属性display-type。

  • list-style属性应该叫marker-style,并list-item更名为marked-block或东西。

  • 'text-overflow'属性应始终适用,而不是依赖于 overflow

  • line-height:<percentage>应计算到等效的行高:<number>,以便它有效地继承百分比而不是长度

  • ::placeholder应该::placeholder-text而且:placeholder-shown应该是:placeholder

  • 'overflow:scroll'应该引入堆叠上下文

  • size应该是一个简写,width而height不是具有不同定义的@page属性

  • 我们可能应该避免在网格属性中使用ident混合关键字(span),可能使用功能表示法(如span(2))。

  • CSS中基本上不应该允许注释(与HTML相比,基本上只允许它们在内容的位置),因为它使得它们在对象模型中基本上不可表示,这反过来使得直接在对象模型之上进行构建编辑不可能

  • Flexbox中的对齐属性应该是写入模式相对的,而不是相对于flex-flow的,因此可以具有合理可理解的名称,如align-inline- *和align-block- *。

CSS设计中的错误大整理!的更多相关文章

  1. iOS中 Realm错误总结整理 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 一.错误信息:Attempting to modify object outside of a write tra ...

  2. 教你避雷!网页设计中常见的17个UI设计错误集锦(附赠设计技巧)

    以下内容由摹客团队翻译整理,仅供学习交流,摹客iDoc是支持智能标注和切图的产品协作设计神器. 精心设计的用户界面对网站意义重大.具备所有最新功能和响应式设计有助于提高网站的搜索引擎排名,从而增加受众 ...

  3. 网页设计中11 款最好CSS框架

    网页设计和发展领域已经成为竞争激烈的虚拟世界.想要在网络的虚拟世界中生存,仅有一堆静止的在线网络应用是远远不够的,网页必须要有很多功能,配以让人无法抗拒的设计.网页编码一定要合适.精确,才能保证不发生 ...

  4. Perl Tk在IC设计中的应用、Windows、Linux平台下的安装-各种错误的摸索解决

    本文转自:自己的微信公众号<集成电路设计及EDA教程> <Perl Tk在IC设计中的应用.Windows.Linux平台下的安装-各种错误的摸索解决> Perl在IC设计中有 ...

  5. PHP 中使用ajax时一些常见错误总结整理

    这篇文章主要介绍了PHP 中使用ajax时一些常见错误总结整理的相关资料,需要的朋友可以参考下 PHP作为后端时,前端js使用ajax技术进行相互信息传送时,经常会出错误,对于新手来说有些手足无措.总 ...

  6. 说说CSS学习中的瓶颈

    虽已数年,但未就学习专门写过文章,这回破处了.苍蝇不叮没有缝隙的鸡蛋,领导不做没有跟拍的表演,同样,想到写CSS学习的文章也是有原因的(虽然我的不少行为没有原因). 情景再现(尊重隐私,下面故事中人名 ...

  7. CSS学习中的瓶颈期深入分析

    虽已数年,但未就学习专门写过文章,这回破处了.苍蝇不叮没有缝隙的鸡蛋,领导不做没有跟拍的表演,同样,想到写CSS学习的文章也是有原因的(虽然我的不少行为没有原因). 情景再现(尊重隐私,下面故事中人名 ...

  8. 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密

    你真的了解字典(Dictionary)吗?   从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...

  9. 算警示吧——此文来自张鑫旭(说说CSS学习中的瓶颈)

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=2523 虽已数年,但未 ...

随机推荐

  1. django-枚举类型扩展方法

    原文地址:https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model.get_FOO_disp ...

  2. 记SCOI2019

    离精英体验营结束已两周的,要哭的要笑的现在也一定释怀了.是时候冷静分析一下这次的考试了.时间序虽然有流水账的嫌疑,但这毕竟是OI界的流行风气. day0 早上坐学校包的商务车去了电子科技大学.走在来过 ...

  3. [转]C#调用C++dll

    本文转载至http://www.cnblogs.com/ysharp/archive/2012/05/25/2517803.html 在合作开发时,C#时常需要调用C++DLL,当传递参数时时常遇到问 ...

  4. springboot Cacheable(redis),解决key乱码问题

    import org.springframework.context.annotation.Bean; import org.springframework.data.redis.core.Redis ...

  5. SolrJ的使用

    SolrJ的使用 1.添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=& ...

  6. python简明教程代码

    #!user/bin/env python #-*- coding:utf-8 -*- # code001 print('hello world') (only one quotation mark, ...

  7. MD5 Hashing in Java

    参考: MD5 Hashing in Java

  8. 删除DataTable的指定行(Lambda)

    DataTable dtTcu = GetAllTcuInfoBySdId(sdId); DataTable dtToesm = GetAllToesmBySdId(sdId); foreach (D ...

  9. numpy和matploptlib

    numpy Numpy介绍 编辑 一个用python实现的科学计算,包括:1.一个强大的N维数组对象Array:2.比较成熟的(广播)函数库:3.用于整合C/C++和Fortran代码的工具包:4.实 ...

  10. C# Directory.Exists() 文件存在但返回一直为false

    备注:这是一个低级错误,起始真正的原因不是访问权限的问题. 真正的原因是:这个程序要读取远程电脑上共享文件夹里的文件,但是没有远程访问代码,导致找不到相关的目录.所以才报错! 查询一个文件,但程序突然 ...