云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

网站建设_阿里企业邮箱注册方法_12月免费

小七 141 0

几乎成为CSS的语言

几乎成为CSS的所有语言的历史和样式化web的发展。当timberners-Lee在1991年发布HTML时,还没有设计页面样式的方法。给定的HTML标记如何呈现是由浏览器决定的,通常需要从用户的首选项中获得重要的输入。对许多人来说,为页面创建一个标准的方式来"建议"它们可能更喜欢的风格呈现方式,这似乎是个好主意。这是根据一篇文章改编的,这篇文章最初出现在Eager博客上。Eager现在已经成为新的Cloudflare应用程序。事实上,在过去的一年里,我一直在不断地(字面上)告诉一大群人,他们想——把自己绑起来,来吧——用在TeX、microsoftword和其他常见的文本处理环境中微不足道的方式来控制文档的外观:"对不起,你拧了。"—马克·安德森1994当timberners-Lee在1991年发布HTML时,还没有设计页面样式的方法。给定的HTML标记如何呈现是由浏览器决定的,通常需要从用户的首选项中获得重要的输入。对许多人来说,为页面创建一个标准的方式来"建议"它们可能更喜欢的风格呈现方式,这似乎是个好主意。但是CSS在五年内不会引入,十年内也不会完全实现。这是一个紧张的工作和创新的时期,导致了许多竞争的造型方法,同样容易成为标准。虽然这些语言在今天显然不被普遍使用,但我们发现思考这个原本可能存在的世界是很有趣的。更令人惊讶的是,许多其他选项都包含了开发人员希望在CSS中出现的特性,即使在今天。第一个提案1993年初,Mosaic浏览器还没有达到1.0。那些存在的浏览器只处理HTML。没有任何方法可以指定HTML的样式,这意味着无论浏览器决定应该是什么样子,这就是您得到的。同年6月,robertraisch向www-talk邮件列表提出了一个建议,即创建一个"一种易于解析的格式,可以将风格信息与Web文档一起传递",这就是RRP。@体fo(fa=he,si=18)如果你不知道这条代码在做什么,你可以原谅。这个特殊的规则是将字体系列(fa)设置为helvetica(he),将字体大小(si)设置为18点。让这种新格式的内容尽可能简洁是有意义的,因为它诞生于gzipping之前的时代,当时连接速度徘徊在14.4k左右。这个提议中缺少的一些有趣的东西是任何单位的提及,所有的数字都是根据它们的上下文来解释的(例如,字体大小总是以点为单位)。这可能是由于RRP被设计成"一组对呈现器的提示或建议",而不是一个规范。这被认为是必要的,因为相同的样式表需要同时用于公共线模式浏览器(如Lynx)和日益流行的图形浏览器。有趣的是,RRP确实包含了一种指定列式布局的方法,这个特性直到2011年才出现在CSS中。例如,三列,每个列的宽度为"80个单位",如下所示:@磷钴(nu=3,wi=80)它有点难以解析,但并不比空白更糟糕:nowrap也许。值得注意的是,RRP不支持我们今天与样式表相关联的任何"级联"。一个给定的文档一次只能有一个活动样式表,这是对文档进行样式设计的一种逻辑方法,即使它在今天对我们来说是外来的。MarcAndreessen(Mosaic的创始人,将成为最受欢迎的浏览器)知道RRP的提议,但Mosaic从未实施过。相反,Mosaic很快(有点不幸)走上了使用HTML标记定义样式的道路,引入了诸如和这样的标记。维奥拉和原始浏览器大战那么为什么不实现其中一个样式表呢摆在桌面上的提案。这几乎可以解决如果操作正确,则出现问题。所以我告诉人们,"好吧,你要学这门语言写你的文件,然后你就可以学习让你的文件看起来像你想要的那样很喜欢。-马克·安德森1994与流行的看法相反,Mosaic并不是第一个图形浏览器。它的前身是ViolaWWW,一个最初由裴元伟在短短四天内编写的图形浏览器。裴媛创建了一种样式表语言,它支持我们今天在CSS中使用的嵌套结构形式:(BODY fontSize=正常BGColor=白色FGColor=黑色(H1 fontSize=最大BGColor=红色FGColor=白色))在这种情况下,我们将应用颜色选择的身体和具体的样式H1s出现在身体。PWP没有使用重复的选择器来处理嵌套,而是使用了一个圆括号系统,它可以唤起像手写笔和SASS这样的语言所使用的缩进系统,这些语言是当今一些开发人员比CSS更喜欢的缩进系统。这使得PWP的语法至少在一个方面优于CSS语言,CSS语言最终将成为web的通用语言。PWP还引入了引用我们今天仍然使用的外部样式表的方法:不幸的是,Violaww的主要任务是使用X窗口只在Unix系统上流行的系统。当马赛克被移植到窗户上时,它很快就把维奥拉留在了尘土中。Web之前的样式表HTML是一种可以只有计算机科学家才会喜欢。是的,它表达了文档的结构,但文档不仅仅是结构化文本数据库;它们具有视觉效果。HTML完全消除了文档设计者可能具有的创造力。-罗伊·史密斯1993早在互联网出现之前,人们就需要一种语言来表达文档的风格。你可能知道,我们所知道的HTML最初是基于一种叫做SGML的互联网前语言。1987年,美国国防部决定研究是否可以使用SGML来简化存储和传输他们处理的大量文档。像任何好的政府项目一样,他们不失时机地想出一个名字。该团队最初被称为计算机辅助后勤保障团队,后来又被称为计算机辅助采办和后勤保障团队,最后是持续采办和生命周期支持计划。不管怎样,首字母都是CALS。CALS团队创建了一种用于对SGML文档进行样式化的语言,称为FOSI,这是一种首字母缩写,它无疑代表着四个单词的某种组合。他们发表了一个语言规范,它是全面的,因为它是不可理解的。它还包括一个最好的无意义的信息图表存在于网络上。互联网的一条不可侵犯的规则是:如果你能在这个过程中证明某人是错的,那么你总能做更多的事情。1993年,就在裴远提出建议后四天,史蒂芬·希尼提出,与其"重新发明轮子",不如使用FOSI的变体来设计网络。FOSI文档本身是用SGML编写的,考虑到web开发人员对SGML变体HTML的熟悉程度,这实际上是一种合乎逻辑的做法。示例文档如下所示:如果您有点困惑什么是docdesc或charlist,那么www talk的成员。唯一给出的上下文信息是e-i-c意思是"上下文中的元素"。FOSI是值得注意的,因为它引入了em单元,现在它已经成为比你更了解CSS的人设计样式的首选方法。语言冲突其实和编程本身一样古老。这是函数式"lisp风格"语法与更多声明性语言语法的较量。裴渊自己形容他的语法是"LISP'ish",但真正的LISP变体进入舞台只是时间问题。图灵完整样式表尽管FOSI非常复杂,但它实际上被认为是解决文档格式问题的一个临时解决方案。长期计划是创建一种基于函数式编程语言方案的语言,它可以实现您所能想到的最强大的文档转换。这种语言被称为DSSSL。用撰稿人乔恩·博萨克的话说:把DSSSL和脚本语言放在同一个包里是错误的。对,DSSSL是图灵完备的;是的,它是一种编程语言。只是一个剧本语言(至少我使用这个术语的方式)是程序性的;DSSSL非常明确不是。DSSSL功能齐全,无副作用。没有什么在DSSSL样式表中发生过。样式表是一个巨大的函数值是对作为规范(声明,如果将)显示区域到下游渲染过程。简单地说,DSSSL实际上是一种相当合理的样式语言:(元件H1(制作段落字号:14pt字号:粗体)由于它是一种编程语言,您甚至可以定义函数:(定义(创建标题标题字体大小)(制作段落字体大小:标题字体大小字号:粗体)(要素h1(创建标题24pt))(要素h2(创建标题18pt))并在样式设置中使用数学构造,例如,将表的行"分条":(元件TR(if(=(模(子编号)2)0)... ;偶数行