css - 如何理解别人的CSS架构?

标签 css design-patterns architecture

我相当擅长 CSS。然而,当使用别人的 CSS 时,我很难看到他们架构中的“大局”(但使用我自己编写的 CSS 表时我没有问题)。例如,我使用 Firebug 来隔离和修复跨浏览器兼容性问题、修复 float 问题或更改特定元素的高度都没有问题。但是如果我被要求做一些极端的事情,比如,“我想要页面 A、B、C 和 D 的右侧边栏有一个红色边框。我想要页面 E、F 和 G 的右侧边栏有一个blue border if and only if the user mouses over”,那么我花了很长时间来绘制所有 CSS 继承规则以查看“大局”。

出于某种原因,我在后端代码中没有遇到同样的困难。在快速了解功能的工作原理并快速检查 Controller 和模型代码后,我会对架构感到满意。我会想,“可以合理地假设会有一个 Employee 类继承自 Department Controller 使用的 Person 类”。如果我发现与整体架构风格不一致的不便细节,我有信心可以将事情恢复原状。

对于其他人的 CSS 工作,我更难看到不同类之间的“关系”,以及何时以及如何使用这些类。当继承规则很多时,我感到不知所措。

我在表达我的问题时遇到困难...我想知道的是,与其他人的业务逻辑层相比,为什么我更难从其他人的 CSS 架构中看到更大的图景?

**这与CSS是一个比较新的技术,流行的设计模式不多有什么关系吗?

最佳答案

我想说的是,一般来说,大多数开发人员编写 CSS 的方式没有“架构”(至少根据我的经验)。大多数人在需要规则时逐步构建 CSS——它通常不像代码架构那样事先计划好。通常人们将相关规则与注释 block 组合在一起,或者可能在单独的样式表中,但实际上并没有太多可遵循的既定模式。

最好的办法是使用一个好的 CSS 编辑器,它允许您直观地浏览工作表中定义的规则层次结构。

关于css - 如何理解别人的CSS架构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2901823/

相关文章:

java - 在开发基于 Java 的 API 时我应该记住哪些方面

java - 如何修改包外预定义的包方法?

node.js - 数据库客户端抽象

architecture - 创建干净、优雅的代码的技巧

html - 菜单列表项宽度拒绝更改?

CSS Sprites 不显示内联

css - 为 #<Gem::Specification:0x3fcd454385e4 compass-1.0.3> 获取 "undefined method ` this' (NoMethodError )"when running "compass compile"

html - 如何让我的 Logo 在导航栏中居中?

php - 减少同一对象的不同类型集合中代码重复的设计模式

architecture - 用例和工作流程之间有什么区别?