首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这30个CSS选择器,你必须熟记(上)

从本篇文章起,我给大家归纳了常用的30个CSS选择器,希望通过我的总结,你能够喜欢上这些常用的选择器,废话不多说,我们这篇文章将介绍前10个。...在介绍之前,我们先理解下文档结构树的父子关系 在学习CSS选择器之前,我们需要弄清楚文档结构的父子关系,什么是父元素、子元素以及祖辈元素和后代元素这些概念,清楚了这些逻辑关系后,你才能更好的掌握CSS选择器...许多开发者可能会用这个技巧如下代码所示让元素居中,在开发测试阶段固然是好的,但是我不建议这么做,因为这样做会给浏览器增加很大的负担。...* { margin: 0; padding: 0; } 浏览器兼容性: IE6+ Firefox Chrome Safari Opera 2、#X:ID选择器 ID选择器的开头使用#号,但是你在使用的时候...CSS的基础和重要内容,虽然简单,但是灵活掌握可不容易,接下来的文章,我将和大家继续分享CSS选择器的剩余内容。

67020

这30个CSS选择器,你必须熟记(上)

从本篇文章起,我给大家归纳了常用的30个CSS选择器,希望通过我的总结,你能够喜欢上这些常用的选择器,废话不多说,我们这篇文章将介绍前10个。...在介绍之前,我们先理解下文档结构树的父子关系 在学习CSS选择器之前,我们需要弄清楚文档结构的父子关系,什么是父元素、子元素以及祖辈元素和后代元素这些概念,清楚了这些逻辑关系后,你才能更好的掌握CSS选择器...许多开发者可能会用这个技巧如下代码所示让元素居中,在开发测试阶段固然是好的,但是我不建议这么做,因为这样做会给浏览器增加很大的负担。...* { margin: 0; padding: 0; } 浏览器兼容性: IE6+ Firefox Chrome Safari Opera 2、#X:ID选择器 ID选择器的开头使用#号,但是你在使用的时候...如果想选择具有某个属性的元素,而不管属性的值是什么,我们可以使用简单属性选择器。

62410
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    你还在为node-sass烦恼吗?快试试官方推荐的dart-sass

    你爱它,因为它赋能了 CSS 工程化;你恨它,因为有时候你搞不懂它为什么又出差错了。我最近就在生产环境新踩了两次 node-sass 的坑,这让我下定决心放弃 node-sass。...在网上搜索这个问题,你会找到答案,其中一个是使用 cnpm,但我用过感觉怪怪的,最早是使用 Angular4 时,执行ng eject发生了很多错误。...我首先检查了下我的 NodeJS 版本。 nove -v v14.16.0 嗯,是新版本没错了。...即便我已经是在 Docker 容器里执行 build 任务了,也就是说没有上面那个和 Node 版本不兼容的问题,但还是遇到了一次又一次的报错,这谁能顶得住呢? ?...换Dart Sass后,我要做些什么 众所周知,在 Vue 项目中,scoped 样式是会通过一个哈希化的属性选择器进行隔离的(比如[data-v-67c6b990]),如果希望做样式穿透,在Vue@2

    2.2K40

    你还在为node-sass烦恼吗?快试试官方推荐的dart-sass

    你爱它,因为它赋能了 CSS 工程化;你恨它,因为有时候你搞不懂它为什么又出差错了。我最近就在生产环境新踩了两次 node-sass 的坑,这让我下定决心放弃 node-sass。...在网上搜索这个问题,你会找到答案,其中一个是使用 cnpm,但我用过感觉怪怪的,最早是使用 Angular4 时,执行ng eject发生了很多错误。...我首先检查了下我的 NodeJS 版本。 nove -v v14.16.0 嗯,是新版本没错了。...即便我已经是在 Docker 容器里执行 build 任务了,也就是说没有上面那个和 Node 版本不兼容的问题,但还是遇到了一次又一次的报错,这谁能顶得住呢? ?...换Dart Sass后,我要做些什么 众所周知,在 Vue 项目中,scoped 样式是会通过一个哈希化的属性选择器进行隔离的(比如[data-v-67c6b990]),如果希望做样式穿透,在Vue@2

    71320

    CSS基础知识

    3.外部式css样式(也可称为外联式)就是把css代码写一个单独的外部文件中,这个css样式文件以“.css ”为扩展名,在内(不是在标签内)使用标签将css样式文件链接到...1、英文圆点开头 2、其中类选器名称可以任意起名(但不要起中文噢) ID选择器 类和ID选择器的区别 学习了类选择器和ID选择器,我们会发现他们之间有很多的相似处,是不是两者可以通用呢?...我们不要着急先来总结一下他们的相同点和不同点: 相同点:可以应用于任何元素不同点:· 1、ID选择器只能在文档中使用一次。与类选择器不同,在一个HTML文档中,ID选择器只能使用一次,而且仅一次。...下面代码是正确的: 三年级时,我还是一个胆小如鼠的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。... 而下面代码是错误的: 三年级时,我还是一个胆小如鼠的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。

    1.3K20

    Chrome 99新特性:@layers 规则浅析

    「组件嵌套导致的样式竞争问题」 有时候,尤其是在组件中,我们可能不会随机命名样式,而是将一些类型的元素固定为同一个名称,比如 .link,以方便用户在使用我们的组件时覆盖这些样式。...有没有什么更好的办法来解决我们的问题呢? 前置 在继续之前,我们先复习一下 CSS 的样式优先级。...而层叠样式中的用户代理、用户、网页作者什么什么的,我好像都没听说过,它们没有被充分利用起来。...那么,是不是可以在计算选择器权重前,增加点什么,让它比选择器权重更优先计算,从而解决选择器权重导致的问题呢?...注意权重 引入了层叠层之后,可能会出现选择器权重更高,却被权重更低的样式覆盖的情况,提高权重又不能解决这个问题。当出现这种情况时,就要考虑是不是因为层叠层导致的...

    1K10

    50个有价值的CSS编写规则,让你写出更好的CSS

    通常,使CSS变得困难的原因是,开发人员没有一套可以遵循和使用的工具,以及最佳实践指南,以帮助他们享受编写CSS的乐趣。...我将所有全局样式保存在一个单独的文件中(尤其是在使用预处理器时),但你也可以将其放在 CSS 文件的顶部,然后专注于为站点的特定组件、元素或部分设置特定样式。...可以说,性能最高的CSS将为页面上的每个HTML元素提供一个ID,并使用它们进行样式设置,而使用CSS选择器则非常昂贵,深度嵌套时更糟。...即使你做错了所有事情,也要保持一致,因为以后更容易修复它们。找到适合你的命名约定,采用 CSS 方法,以相同的方式组织样式,定义嵌套选择器的级别等。定义你的样式并坚持并随着时间的推移改进它。...45 、尝试组织 CSS 以匹配标记顺序 它确实可以让你更轻松地通过查看 CSS 来理解你的标记。这是我做的事情,为我节省了很多时间。

    2.4K20

    前端项目负责人最基础的需要会哪些

    css引入 选择器 选择器优先级 继承 值和单位 文本属性 盒子模型 视觉格式化模型 VFM BFC & IFC position float flex 布局 层叠上下文 less / scss 3.1.5...小程序在android和iphone上的不同 部署发布 3.2.5 Typescript TypeScript是什么 TypeScript和javascript的区别是什么 TypeScript 功能拆分...能力到了没? 当然可以说等到了位置在去磨练,也不是不行,那为什么不在现在的阶段就去打好以后成为负责人的基础呢。我们再把上面的图拿下来看一下: ? 我最近有两个毕业一两年的同学主动找我沟通了一下。...写在最后【毒鸡汤】 持续学习 工作中提升 明确自己的方向 这个过程当中很多需要自己主观上的改变,过程会有一点辛苦,在这里毛遂自荐一下自己的对于工作和学习上的困难的理解。...今天遇到的困难越多,不代表明天没有困难,而是明天遇到的困难,就会是后天或者更加往后遇到的困难 这句话可能稍显前方的路有点艰难,我总是把现在遇到的困难当成锻炼自己的机会,勇于尝试,就算现在失败了, 以后在遇到的时候

    69630

    CSS基础知识

    5-4 类和ID选择器的区别 学习了类选择器和ID选择器,我们会发现他们之间有很多的相似处,是不是两者可以通用呢?...下面代码是正确的: 三年级时,我还是一个胆小如鼠的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。... 而下面代码是错误的: 三年级时,我还是一个胆小如鼠的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。... p和.first都匹配到了p这个标签上,那么会显示哪种颜色呢?green是正确的颜色,那么为什么呢?是因为浏览器是根据权值来判断使用哪种css样式的,权值高的就使用哪种css样式。... 到了三年级下学期时,我们班上了一节公开课,老师提出了一个很简单的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。

    2.8K30

    简易数据分析 15 | Web Scraper 高级用法——CSS 选择器的使用.

    使用 Web Scraper 的 Selector 自动选择元素时,有时候选的节点不准,抓不到数据,这时候就要我们手动调节 Selector 生成的代码。...比如说我们想定位《肖申克的救赎》的电影名字,按照上面的步骤走一遍流程,动图如下: 是不是非常的简单?借助这个小箭头,我们可以很轻松的定位 HTML 节点。 二、CSS 选择器 CSS 是个什么东西?...先不要管它为什么叫 CSS,这不重要。我们只要关注 CSS 是干什么的就行了。 有一个非常形象的比喻:HTML 是骨架,CSS 是衣服。...举一个简单的例子,在前面定位玩具枪时,我们可以通过 id 选择器定位,也可以通过 span 元素定位,如果我们想通过父元素来定位该怎么做呢? 这时候后代元素选择器就该出场了。...有时间的话还可以去 https://www.runoob.com/cssref/css-selectors.html 这个网页看看本文没有介绍的其他 CSS 选择器,说不定就在项目中用到了。

    1.1K30

    微前端方案 qiankun 的样式隔离能不用就别用吧,比较坑

    其实也简单,一句话就可以说明白:当路由切换的时候,去下载对应应用的代码,然后跑在容器里。 比如 single-spa,它做的就是监听路由变化,路由切换的时候加载、卸载注册的应用的代码。...除了 JS 隔离,还有 CSS 的隔离,不得不说,qiankun 的样式隔离是真的坑,也是我这主要想吐槽的点。 哪里坑呢? 跑一下就知道了。...也不能说是 shadow dom 有问题,人家本来就是这么设计的,只不过用来做微前端样式隔离还是不够的。 弹窗的样式问题怎么解决? 是通过通信机制把弹窗样式传过去么?那是不是改造成本又增加了?...css modules 是 css-loader 实现的功能,开启也是相当简单: 比如这样的样式: 开启后就会变成这样: 在选择器名字上加了 hash。...scoped 的方案是给选择器加了一个 data-qiankun='应用名' 的选择器,这样父应用能设置子应用样式,这样能隔离样式,但是同样有挂在 body 的弹窗样式设置不上的问题,因为 qiankun

    2.8K30

    CSS的优先级

    CSS 中的优先级也叫做特异性,浏览器使用它来判断在元素上使用何种属性,优先级是基于不同的选择器组合而成的匹配规则。...important 是一个坏习惯,应当尽量避免,因为这破坏了样式表中的固有的级联规则,使得调试或找 bug 时变得更加困难。当两条相互冲突的带有 !...important 规则的声明被应用到相同的元素上时,拥有更大的优先级的声明的将会被采用。 下面引用 MDN 文档中建议的经验: - 一定要优化考虑使用样式规则的优先级来解决问题而不是 !...如果你已经碰到了最高优先级的 ID 选择器,该怎么办呢,有个 hack 的方法,可以复制简单的选择器,以增加优先级,就好比在优先级的计算中做加法,例如下面的代码: /* 复制简单的选择器,以增加特异性...important 覆盖内联样式 在团队协作中,有他人的代码使用了内联样式,而需要去覆盖的时候。或者在使用一些库或者框架的代码时,有一些样式写在了内联样式中。

    81010

    怎样才能写出更好的 CSS

    让我们开门见山:编写优秀的 CSS 代码是件十分痛苦的事情。很多开发人员都不想做 CSS 开发。你让我干什么都行,但是 CSS 还是算了吧。 在我创建应用的时候,从来都无法从 CSS 中享受到乐趣。...CSS 框架就是为了帮助我们写出更好的 CSS 代码,不是吗? 当然,但是 CSS 框架也有一些缺点: 它经常会使用平淡无奇的设计。 CSS 框架使得定制很困难,更不用说超越框架了。...对于这里的样板,我指的是:每次开始一个新项目时,你需要写的所有CSS代码。...实际上,在构建网站时,你可能会使用一些并非所有浏览器都完全支持的新功能。因此,提供商方案可以提供对这些功能的支持。...太棒了是不是吗?但是你知道更酷的是什么吗?这里为你设置了一个代码仓库,以帮助你迅速开始:) 如果你想知道我是如何在项目中应用这些技术的,请点击这里查看 代码仓库 和 结果。

    1.7K10

    「前端工程四部曲」模块化的前世今生(下)

    接下来这篇文章我们就来简单聊一聊 CSS 模块化。 为什么CSS也需模块化? 其实平常我们使用 Vue、React这类框架时,就已经使用到了CSS模块化。...而且需要巧妙运用,因为特定要求(强调重复使用类选择器,避免使用ID选择器)如果运用不得当,反而可能会造成后续维护困难,所以使用此方案最好写上说明文档。...通过构建工具的帮助,将 class 的名字或者选择器的名字作用域化(类似命名空间化)。 我们之前使用原生 CSS 时,写两个名字相同的 class,样式肯定会冲突。...CSS Modules 仍然使用 CSS,只是让 JS 来管理依赖,能够最大化地结合 CSS 生态和 JS 模块化能力,在我来看是最优的解决方案了。...So,我想说的是,如果你的团队 CSS 问题如上,那就赶紧行动起来吧,在现代的 CSS 模块化方案之上再使用一些像 BEM、ACSS 等约束来把 CSS 规范起来,简单省事,利大于弊。

    73820

    编写模块化CSS——BEM

    我开始只用一种方法。然后,当我尝试不同的方法时,我开始把我认为有意义的东西包含在我的探索过程中。 在这篇文章中,我想和大家分享一下我如何构建 CSS 以及为什么我这样做。...当我在寻找一个出色的 CSS 架构时我究竟在找什么 当我将不同的方法拼凑在一起以形成我自己的习惯时,我会寻找以下四个特点: 我必须 立即知道编辑一个 class 是否安全,会不会干扰其他 CSS。...即将分享的第二种方法是使用普通的 CSS,所以你也可以使用它! 方法 2:使用 CSS 属性选择器 第二种方法 使用CSS属性选择 器执行稍微更复杂的选择。...我会告诉你它是什么,然后解释为什么这样做: ? 现在,这不是你通常看到的选择器,所以我来解释一下。...你会知道为什么我这样做。 接下来,还有一件事,在我的用例中添加为 BEM 添加的 —— 容器。

    2.1K70

    精选!5 个必备必知必用的前端插件

    VSCode:为什么你是最好用的浏览器呢?你咋这么自信呢? Chrome:因为 一、我界面简洁,清爽,非常干净。二、速度快。正所谓,“天下武功唯快不破”,相比于猎豹、IE 等我的加载速度可谓第一。...我拥有强大的第三方插件库,因此使用起来极其方便。最重要的是:升级快、同步性好。 VSCode 窃窃一笑,说:嗯,你说的真对,说的太好了。那你们知道目前市场上最好的前端编辑器是哪个吗?...itemName=chrmarti.regex 2、CSS Peek 使用 CSS Peek 插件,我们选中应用的样式名字直接可以追踪到样式表中 CSS 类和 ids 定义的地方。...当你在 HTML 文件中右键单击选择器时,选择 “Go to Definition 和 Peek definition” 选项,它便会给你发送样式设置的 CSS 代码。 ?...今天推这篇文章是不是想抢东哥的风头? VSCode:对不起,东哥,我错了,好在你今天顺利回国了。其实我也想每天都去美国大学深造。

    2.3K50

    你了解 JSX,那你了解 StyleX 么?

    大家好,我卡颂。 近日,Meta开源了一款「CSS-in-JS库」 —— StyleX。看命名方式,Style - X是不是有点像JS - X,他们有关系么?当然有。... 请问p标签是什么颜色的? 从class来看,blue在red后面,p应该是蓝色的么? 实际上,样式取决于他们在样式表中定义的顺序,.red的定义在.blue后面,所以p应该是红色的。...这么做除了让组件的样式与逻辑更方便维护,也减少了stylex编译的实现难度。 再比如,CSS中各种选择器的复杂组合增强了选择器的灵活性。但同时也增强了不确定性。...什么叫「样式的类型安全」?通俗的讲,如果我实现一个组件,组件通过style props定义样式,我只希望使用者能够改变color与fontSize两个样式属性,不能修改其他属性。...「样式的类型安全」有什么意义呢?举个例子:设想开发基础组件库的团队使用stylex。那么当业务团队使用该组件库时,就只能自定义组件的一些样式(由组件库团队约束)。

    42820
    领券