七种基本的css选择器

这就是基本 CSS 选择器的全部内容。
时间:1 0年一线经验。
地点:任意。
数量:七个基本。

常见的css选择器有哪些

坦率地说,CSS选择器是设计网页样式的主要工具,而且它们实际上非常简单。
我们先来说说最重要的项目选择器。
例如,使用 p 选择所有段落,使用 div 选择所有分隔符。
这个方法在我们去年建立的一个网站上被使用了大约3 000次。

还有一点是通用选择器使用星号来选择所有元素。
很多人都没有注意到这一点,但它对于整体风格重置特别有用。
起初我以为这会导致性能问题,但后来发现事实并非如此,因为浏览器对这部分进行了优化。

还有一个关键的细节,就是ID选择器和类选择器。
ID选择器通过元素的id属性值选择唯一元素,例如header,而类选择器通过元素的class属性值选择元素,例如.button。
一个元素可以有多个类名,这使得类选择器非常灵活。

最后,一个容易陷入的陷阱是选择器的优先级和组合规则。
例如,当你看到nav.active>a时,它实际上选择了具有nav id的元素中具有活动类名称的直接子元素a。
而 input[type="text"]:focus 选择获得焦点的文本输入框。
掌握它们会让你在编写 CSS 时更加得心应手。
我认为值得一试。

css中的选择器包括哪些 css选择器类型全面解析

说实话,当我第一次接触CSS时,我对这些选择器感到困惑。
后来我在做很多项目的时候,逐渐觉得这个东西就像厨师拿着刀一样,不管是能用软的还是不能用热的。

以床元素为例。
请记住向所有
添加背景颜色的错误副本。
代码是div{background-color:f0f0f0;}。
老板抱怨说,这一次就像是在所有的篮子里都撒了盐,不管咸不咸。
说实话,早期的做法是纯静态的瘦页面。
现在还有谁这样做?
这就是我作为电工真正使用的。
例如.my-class {color: blue;},这个对象只是一个通用屏障。
当我之前处理页面活动时,我对所有按钮使用 .btn 类,然后通过 .btn.primary 和 .btn.danger 的组合形成单独的状态。
比直接使用 <button class="primary"> 直观得多,并且以后想更改颜色?直接更改.primary规则即可。
这一招后来被隔壁团队复制了。

我通常在特殊场景下使用ID选择器。
不幸的是,对于某个弹出层,只需抓住模态对话框就可以了。
但我们必须小心,必须遵守什么。
那一年我忘记了有一个唯一的ID。
结果两个弹窗互相屏蔽,玩了三天。
教训是:我的唯一元素总是比同类型名称更可靠,只要你能确保ID是全局唯一的。

选定的属性非常有趣。
我有一个旨在治愈的小技巧。
使用 input[type="email"][required] 直接选择所有具有 required 属性的电子邮件输入框。
比编写 .form-email[必需] 简单得多。
但如果使用太多,它很容易成为一张蹩脚的卡。
例如,我的同事写道,应该排除内部链接。
为此,后来切换短页协议直接崩溃了。
所以选择器应该像火一样使用——用够就行,不要玩火。

我读曾孙何须谨慎。
说实话,当更多的选择器喜欢文章部分 p 的 body div .content 时,我感到头晕。
后来团队制定了一个规则:如果可以使用子选择器,就不要使用尾随空格,例如 div > p。
这样层次结构清晰,浏览器可以快速解析。

伪类和伪元素是我最喜欢的玩具。
: 主动添加下划线, : 焦点打破边框。
这些交互效果直接用CSS实现,无需编写JS。
伪元素::之前就比较神奇了。
我曾经使用 .list-item::before{content:"";background-image:url(...)} 直接向所有电子邮件元素添加背景图像,这看起来比在 HTML 中添加空 好得多。
但请记住,::之前没有内容只是一个装饰,浏览器会提醒你。

我发现了一些关于保存单词的东西:语义名称比嵌套选择器好得多。
例如,我之前有一个项目,使用包含 .profile 的 .user-info .name 来定位用户名。
然而,后来需求发生了变化,我不得不向 .name 添加一个同级元素,这立即弄乱了 CSS。
后来我改用了 BEM 的 .profile 命名方法,这样代码量减少了一半,可用性提高了一倍。

性能方面非常有趣。
曾经看过某大厂官网的FOUT(无活力风格),后来发现CSS顺序加载类是ID->element,关键地方使用了!import。
说实话,这种炫酷的操作小公司是学不到的,但是确实管用。
关于
伪元素需要注意的几点:::before 和 ::after 没有省略。
我忘记添加我的内部组件之一,浏览器刚刚杀死了伪元素。
经过很长时间的调试,我以为是CSS语法错误,终于明白了他忘了写内容:“”。
那件事让我意识到编写CSS就像驾驶汽车一样——你必须遵守规则,否则它最终会出故障。

总之,用太多电就像喝酒一样。
起初我感到窒息,但渐渐地我能尝到它的味道了。
关键是要知道何时使用 ID、何时使用类以及何时使用属性选择器。
不要像一个只知道{margin:0}的新手,也不要像一个像疯子一样撒谎的老魔术师。
找到平衡点,让信号看起来不错,性能也够用。