Ruby on rails 为什么Sass或Scss将颜色“ffe”转换为“ffee”并添加“ffee”&引用;哪一个会使css文件加载变慢?
Sass或Scss(.Sass)在Ruby on Rails项目中很常见,但我刚刚发现它可以转换颜色,例如:Ruby on rails 为什么Sass或Scss将颜色“ffe”转换为“ffee”并添加“ffee”&引用;哪一个会使css文件加载变慢?,ruby-on-rails,sass,Ruby On Rails,Sass,Sass或Scss(.Sass)在Ruby on Rails项目中很常见,但我刚刚发现它可以转换颜色,例如: background: #ffe 进入 为什么需要额外的字节?还有,为什么额外的在最后?Sass应该自动编译成.css文件,因此如果用户直接编辑css文件,那么末尾的“额外分号”可能是一种很好的形式,但是Sass是关于自动编译的,那么为什么要添加增加页面加载时间 第二,为什么普遍接受的#ffe扩展为#ffee?没有一款现代浏览器不理解它。。。(可能除了低端手机上的浏览器,但这些页面无论
background: #ffe
进入
为什么需要额外的字节?还有,为什么额外的代码>在最后?Sass应该自动编译成.css
文件,因此如果用户直接编辑css文件,那么末尾的“额外分号”可能是一种很好的形式,但是Sass是关于自动编译的,那么为什么要添加代码>增加页面加载时间
第二,为什么普遍接受的#ffe
扩展为#ffee
?没有一款现代浏览器不理解它。。。(可能除了低端手机上的浏览器,但这些页面无论如何都很难阅读。)双重推理。可读性+一致性。大小差异可以忽略不计,如果您担心速度,那么最好花时间优化代码/删除重复属性,而不是担心分号。这允许一致的写作双重推理。可读性+一致性。大小差异可以忽略不计,如果您担心速度,那么最好花时间优化代码/删除重复属性,而不是担心分号。这允许使用压缩输出模式一致写入输出Sass,它将删除最后一个分号,并使用更紧凑的颜色版本
例如
返回
div{color:#ffe}
使用压缩输出模式输出Sass,它将删除最后一个分号,并使用更紧凑的颜色版本
例如
返回
div{color:#ffe}
正如我所说,它是自动生成的。#ffe
是否比#ffee
可读性差?结尾的最后一个分号真的那么“可读”吗?我真的不这么认为。我认为这会增加混乱。想想列表[1,3,5]
是可读性更强还是[1,3,5,5]
可读性更强?这不是关于这个特定片段的可读性,而是整个样式表的可读性。例如,如果您有多个属性,那么除了最后一行之外,所有行都将使用分号,即不一致性。顺便说一句[1,3,5],逗号违反了编码标准,同时分号在css中是事实上的代码>即使对于1个属性,它看起来很难看,你可以说,“这是为了一致性。”为什么它真的需要一致性?那又怎样?人们会直接编辑生成的css文件吗?不,看起来好些吗?不。我认为一致性会让它看起来更难看,加载速度也会变慢,所以在这种情况下,一致性并不是首选。这是一种可能的方法。我不用它,所以没关系。另一方面,我们中的一些人只是喜欢有一致的可读代码,不管它是否生成。从技术角度来看,YASS或SASS都这样做,因为它们首先解析样式表,然后从头生成规则。因此,统一公约。他们不仅仅是复制和粘贴你的规则。至于速度差异,就像我提到的那样,您正在保存的8个字节可能不会有太大影响。如果我需要检查生成的css,可能我更喜欢看清楚简单的#ffe
,而不是像我说的那样解释#ffee
,这比#ffe
需要额外的几秒钟的时间,它是自动生成的。#ffe
是否比#ffee
可读性差?结尾的最后一个分号真的那么“可读”吗?我真的不这么认为。我认为这会增加混乱。想想列表[1,3,5]
是可读性更强还是[1,3,5,5]
可读性更强?这不是关于这个特定片段的可读性,而是整个样式表的可读性。例如,如果您有多个属性,那么除了最后一行之外,所有行都将使用分号,即不一致性。顺便说一句[1,3,5],逗号违反了编码标准,同时分号在css中是事实上的代码>即使对于1个属性,它看起来很难看,你可以说,“这是为了一致性。”为什么它真的需要一致性?那又怎样?人们会直接编辑生成的css文件吗?不,看起来好些吗?不。我认为一致性会让它看起来更难看,加载速度也会变慢,所以在这种情况下,一致性并不是首选。这是一种可能的方法。我不用它,所以没关系。另一方面,我们中的一些人只是喜欢有一致的可读代码,不管它是否生成。从技术角度来看,YASS或SASS都这样做,因为它们首先解析样式表,然后从头生成规则。因此,统一公约。他们不仅仅是复制和粘贴你的规则。至于速度差异,就像我提到的那样,您正在保存的8个字节可能不会有太大影响。如果我需要检查生成的css,可能我更喜欢看#ffe
,它清晰而简单,与解释#ffee
相比,解释#ffee
需要额外的一秒时间,您能将其合并到Rails中吗?(可能是在haml gem中)我发现你的代码行不会压缩成#ffee
,但这行会:echo-e“div\n color:#fffe”| sass-t compressed
(但原来是在sass中)顺便说一下,我发现Sass的压缩
模式是唯一一种将#ffee
转换为#ffe
的模式,但它一路走来:即使换行符也没有空格。。。因此,没有一种模式可以压缩成#ffe
,同时保持良好的换行。你能将其合并到Rails中吗?(可能在haml gem中)我发现您的代码行不会压缩为#ffee
,但是
div{color:#ffe}