为什么大多数开发人员都害怕CSS
当我开始工作时,我们团队中的两位前端开发人员。这是我和一位资深的前端开发人员。然后,高级前端开发人员辞去了工作,我是团队中唯一的前端开发人员。这很好。我做了我的工作,没有任何伤害。我们有一些面试,但我们没有达到合适的适合度。时间流逝,然后它击中了我:我是唯一一个了解我们前端的人。总线因子是1,在这种情况下这不是一个好的数字。为什么?如果我被公共汽车撞到,项目将处于糟糕的状况。
然后我和我的老板谈过,我们达成了协议,我们都应该为前端负责。这项工作可以在结对编程中完成。至少在我们找到合适的匹配之前。我认为那是个好主意。我在前端独自工作时完全被烧毁了。
然后我们提出了这个想法,第一个反应是来自其他开发人员的恐惧。恐惧主要是关注CSS。
HTML和CSS适合输家?我们都应该使用Microsoft Word。
– Steffen?(@mrsteffenp),2019年6月8日
为什么开发人员会担心CSS?
我和其他开发者讨论了他们为什么害怕CSS。提出的第一件事就是级联?如果他们对一个类进行更改会影响其他五百个元素怎么办?
接下来提到的是对浏览器的支持?如果他们实现了什么,在某些浏览器中不支持?
最后的事情是从头开始构建一些东西?如果他们做了什么,那不是很坚固而且不好看怎么办?
级联?
这是最大的担忧之一。当其他开发人员谈论这个时,我猜他们正在谈论很多事情。重要性,特异性,源顺序以及属性如何从不同规则继承。样式可以在许多不同的地方指定,并且可以以复杂的方式进行交互。这就是为什么CSS如此强大,但它也是原因,它可能令人困惑和困难。如果您不知道选择器如何否决其他选择器的规则,那么级联可能是一个恶魔般的事情?
重要性
这是一个很好的话题。我们都知道,使用这个小助手(在大多数情况下)是不好的。这是因为 重要
将永远赢得?
特异性
特异性基本上衡量选择器的具体程度。就像,内联样式是最具体的 #ID
, 然后 。类
,然后 元件
。从那里,可以以百万种不同的方式测量特异性。如果您有疑问,可以使用特异性计算器。
来源订单
来源顺序基本上是后来的规则将赢得早先的规则。如果您编写带有属性和值的选择器,然后再使用相同的属性编写相同的选择器 – 但具有不同的值。那会怎么样? ?
遗产
CSS中的继承既简单又棘手。可以用这种方式解释:应用于元素的某些属性值将由元素的子元素继承,而有些属性值则不会。听起来不是很棒吗? ?CSS属性如 字体大小
和 颜色
继承,和属性一样 余量
和 填充
不要继承。我想你必须在这个中使用常识。如果 余量
将继承,这将导致一个巨大的混乱您可以使用MDN作为参考。
浏览器支持?
除非您的客户是仅支持Internet Explorer 6的公司,否则您不必担心。大多数用户都使用现代浏览器,并且支持CSS。如果您觉得不安全,是否应该使用特定的财产,那么您可以在caniuse查看。如果浏览器不支持该属性,但您确实想要使用它,那么大多数浏览器 @supports
CSS同名的规则。然后你可以做一个后备解决方案。
@supports(display:grid){div {display:grid; }}
从头开始构建一些东西?
这主要是关于设计师和开发人员之间的沟通。沟通并不总是那么好。有时,设计师的抱负可能与公司的钱包和开发人员的技能相关 – 或实际上可能的。
关键是,我们作为开发人员应该更多地融入设计过程中,因此我们都可以对结果感到满意。话虽如此,如果开发人员对设计感到满意,那么从头开始构建它会更容易。
我希望这不是一堆废话。我真的想告诉其他开发人员,每天不能使用CSS,CSS不是魔术✨
感谢您的时间
如果您喜欢这个,请❤️并在Twitter上关注我。