Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 如何防止样式表变得令人费解?_Css_Sass_Less_Stylesheet - Fatal编程技术网

Css 如何防止样式表变得令人费解?

Css 如何防止样式表变得令人费解?,css,sass,less,stylesheet,Css,Sass,Less,Stylesheet,如何防止CSS样式表(或预处理较少的样式表或SASS…)变成无法理解的乱七八糟,无法再预测哪些样式会影响每个元素,您必须通过艰苦和无休止的尝试和错误对基于CSS的设计进行进一步调整 上下文:每次我开始在一个网站上工作时,我都会从一组干净且组织良好的样式表、一个框架(通常是引导),然后是一个布局样式表、一个排版样式表,对于某些网站来说是一个颜色方案样式表,然后是一个常规的“外观”,其中样式按区域和子区域进行分组,等等。在慢慢添加东西之前,一切都很好,很干净,事情达到了一个“转折点”:我再也不能“在

如何防止CSS样式表(或预处理较少的样式表或SASS…)变成无法理解的乱七八糟,无法再预测哪些样式会影响每个元素,您必须通过艰苦和无休止的尝试和错误对基于CSS的设计进行进一步调整

上下文:每次我开始在一个网站上工作时,我都会从一组干净且组织良好的样式表、一个框架(通常是引导),然后是一个布局样式表、一个排版样式表,对于某些网站来说是一个颜色方案样式表,然后是一个常规的“外观”,其中样式按区域和子区域进行分组,等等。在慢慢添加东西之前,一切都很好,很干净,事情达到了一个“转折点”:我再也不能“在脑海中运行”样式规则,选择器变得如此复杂,以至于我无法轻松预测新规则将应用于哪些元素,所以我开始打破层次结构,添加一个“tweaks1.css”tweaks层,然后添加一个“tweaks2.css”然后所有的一切都在下降,造型已经变得完全不可理解

…同样的事情也会发生,无论我使用的是更少还是更多。CSS的级联特性总是让我受益匪浅。所以有没有办法强制CSS提交?这里有“设计模式”吗?


注意:我是一名程序员,我有不止一种范例和编程语言的经验,我在处理大型代码库方面没有问题,但当我开始前端工作时,不知何故CSS的“级联规则”逻辑在某个点上让我心碎。。。我曾经在Javascript意大利面上遇到过同样的“不可理解”问题,但对于代码来说,有模式和最佳实践,我找到了将内容重构为提交的方法…

这在CSS中始终是一个棘手的部分。写作时最好的方法是注释和可视化地组织CSS。例如,我的页面总是分为页面基本(定义字体、背景等)、基本文本格式(p、h1-h6、i、b)、链接和菜单(a、a:悬停、导航)、表格、格式(div、section)、表单/输入和转换/效果等部分


在测试阶段,我使用Firefox中的firebug向我展示了在元素级别应用了哪些CSS属性,哪些是继承的,哪些是继承的,但是被覆盖了。

关于sass,也许可以作为一个起点来使用查看smacss()。以及上面的内容,google for OOCSSI倾向于尽可能少地尝试和依赖样式级联,而是尝试做精确的特定性(但不长,像LESS和SASS这样的冗长选择器字符串可以通过嵌套轻松生成)。您可能会发现这对思考很有用,它考虑以较少的实际目标元素来组织CSS?关于软件中的设计模式的问题是可以的,但是关于CSS中的设计模式的问题不是吗?