CSS设计中的错误大整理!
如果有人发明时间机器,那应该将这些错误纠正,不然可把前端程序猿们给还惨了。大家一起看看都有哪些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- *。
相关推荐
-
第18问:MySQL CPU 高了,怎么办?2025-02-24 10:27:18
-
mysql索引类型 normal, unique, full text
mysql索引类型 normal, unique, full text2025-02-24 10:05:05 -
uwsgi+django+nginx 搭建部分总结2025-02-24 10:03:33
-
使用Docker配置Nginx环境部署Nextcloud2025-02-24 10:02:03
-
Nginx安装和怎么使用2025-02-24 10:00:45