问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

为什么CSS4要比CSS3用的少?

发布网友 发布时间:2022-05-14 01:17

我来回答

2个回答

懂视网 时间:2022-05-14 05:38

简单地说,就是从CSS3开始,CSS规范就被拆成众多模块(module)单独进行升级,或者将新需求作为一个新模块来立项并进行标准化。因此今后不会再有CSS4、CSS5这种所谓大版本号的变更,有的只是CSS某个模块级别的跃迁。

引入模块化之前

按照CSS工作组的说法,CSS历史上并没有版本的概念,有的只是“级别”(level)的概念。比如,CSS3其实是CSS Level 3,CSS2是CSS Level 2,而CSS Level 1当然就是CSS1。每个级别都以上一个级别为基础。

大家都知道,CSS1早就作废了。CSS2其实基本上也已经作废了。但是,CSS1、CSS2(以及CSS2.1)在当时都是一个大而全的规范。而且,CSS2在成为最终标准的时候,W3C规范的流程里还没有定义CR这个阶段。

后来,W3C进一步完善了规范制定流程,要求每个规范都要经过以下五个阶段:

1. 工作草案

(WD,Working Draft)

2. 最终工作草案

(LC/LCWD,Last Call Working Draft)

3. 候选推荐

(CR,Candidate Recommendation)

4. 提议推荐

(PR,Proposed Recommendation)

5. 推荐标准

(REC,Recommendation)

由于当初CSS2并没经过CR阶段,因此出现了很多问题。CSS工作组被无穷无尽的“改bug”搞得不厌其烦。结果,他们决定对CSS2进行一次修订,这就是CSS2.1(CSS Level 2 Revision 1)。

换句话说,CSS2.1其实只是CSS2的一个修订版,并没有实质性变化。有些CSS2中的内容,CSS工作组认为不够成熟,于是从CSS2.1中删除了。这些删除的内容被视为回退到流程的CR阶段——相当于需要“回炉”。(后来,这些内容基本都以CSS模块的方式,经过修订和增补,进入了CSS Level 3。)

CSS2.1及之前的CSS规范把所有内容都写在一个文档里。随着CSS特性越来越多,越来越复杂,CSS规范的篇幅也越来越长。CSS2.1的PDF版有430页。这就给勘误和进一步升级带来了极大不便。因为文档不同部分升级的进度不可能强求一致。

于是,CSS工作组决定从CSS2.1之后开始采取模块化的路线。就是把需要升级的内容独立成模块拆分出来,新增的需求也以新模块的方式立项。从此以后,CSS就进入了Level 3。

引入模块化之后

CSS采取模块化路线后,就有了三种模块,而且它们的命名方式非常值得注意。

CSS Level 2原有模块:Selector、Color、Values and Units、BackgroundS and Borders等这些都是从原来CSS规范中拆出来的模块。这些模块的命名一开始就会从Level 3开始,比如Selectors Level 3、CSS Backgrounds and Borders Level 3 ,因为它们都是在CSS Level 2的基础之上开始的。

新模块:Multi-column Layout、Transitions、Flexible Box、Transforms等都是后来新增的模块,以前CSS中不存在类似特性。因此它们的命名会从Level 1开始,比如CSS Transitions Level 1、CSS Flexible Box Module Level 1。

当然,还有CSS2.1从CSS2中删除的内容。如前所述,“被CSS2.1删除的CSS2中的内容,被视为回退到CR阶段”,而其中大部分内容都会以CSS Level 3的面目“转世”,一旦它们进入CR阶段,就会取代之前对应的内容成为新标准。

OK,上述任何模块的规范从WD推进到REC阶段,要么意味着新CSS模块诞生,要么意味着旧CSS模块重新焕发了生机!

希望下面这张图能更直观地说明CSS模块的命名:



640.png

模块还会有Level 4或更高

CSS到Level 3因为采取了“模块化”策略,本身不会再进化到Level 4了。正因为如此,CSS理论上永远不会出现CSS4。但是,CSS中的某个模块是可以到Level 4甚至更高级别的。比如,CSS Color Module就开始Level 4的升级之旅了(https://www.w3.org/TR/css-color-4/)。

CSS snapshot 2017里是这么说的:

There is no CSS Level 4. Independent modules can reach level 4 or beyond, but CSS the language no longer has levels. (“CSS Level 3” as a term is used only to differentiate it from the previous monolithic versions.)

没有CSS Level 4。独立的模块可以到Level 4或更高级别,但CSS这门语言不会再有这个级别。(“CSS Level 3”作为一个概念,只是便于跟之前大而全的版本有所区别。)

热心网友 时间:2022-05-14 02:46

您好。CSS4是刚出的,CSS3和HTML5很多人都已经用习惯了,并不是说高版本不好用,而是用的人少
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
光线为什么不存在 炒菜时要等到油冒烟吗 高考数学选修没涂有分吗? 高考选修不涂有分数吗 《宫》中插曲是什么乐器演奏的? 电视剧《宫》的主题曲和片尾曲分别是什么? 爱我的人和我爱的人原唱是裘海正还是游鸿明 刑法对追诉时效的规定 刑事案件追诉期限的法律规定是什么? 爱奇艺海外版怎么下载 分手前女友不删除微信,有时候给她信息也会回,是什么意思?希望女孩子给点意见。 前女友已经有新男友了,为什么仍不愿意删除微信黑名单中的我? 前女友为什么不让我删微信,这是一种什么心态? 前女友为什么不删除我的微信,问她都说自己谈了男朋友了? 前女友为什么有五六年没删我微信,以前不管我怎么说她,她也不会说一个字,空气一样,最近一段时间聊了? 求唯美情侣头像。。不要文字不要卖萌的,。谢谢了 求格瓦拉的歪脖卖萌头像 谁知道这个男生的另一张图片,嘟嘴两手比着剪刀手卖萌的头像 嘟嘴卖萌头像女生 求个卡通卖萌的头像,不要随便一百度就能搜到的那种,类型我附图的。 静电除尘具体原理是啥?不要太笼统答案,要容易理解,容易看懂的!谢谢 利用静电除尘器可以消除空气中的粉尘,静电除尘器由金属管A和悬在管中的金属丝B组成,A和B分别接到高压电 海边的,什么东西 沙滩上有什么东西? 海边看到的是什么? 什么东西,海边的 谁知道嘉讯传呼 ? 想送女朋友点零食,有推荐的吗? 梦见自己家在一个很大的玻璃鱼缸里养了很多的红色锦鲤,在水里游来游去。后来我还给它们喂食了。鱼儿拼命 中国保险公司前5强 前女友不删我的微信是不是代表着她还想着我? 分手半个月,前女友突然昨天把我QQ好友删了,但是微信又没有删,这是几个意思啊? 铁锅品牌哪个强?求告知? 铁锅品牌哪个好?求推荐 哪个牌子的铁锅最好? 电脑原本有驱动 怎么能换别的驱动 电脑管家11.6是不是电脑最新版本 名校贷的视频签约时怎么样的 内容是什么 名校贷微信借款录制视频问题? 微信红包是谁的 99乘101怎么简便计算 九牛一毛解三个阿拉伯数字 电脑管家现在是不是这个版本啊8.10.11203.212啊你们是不是啊 煮挂面放什么料好? 101✖️99用巧算怎么算 腾讯电脑管家为什么有两个版本存在 九牛一毛牛的成语 99✖️101简便计算 如何查看电脑是否支持uefi启动 做挂面放啥东西