博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ID vs Class 老生常谈的选择器问题
阅读量:5968 次
发布时间:2019-06-19

本文共 823 字,大约阅读时间需要 2 分钟。

昨天看了下那本《CSS3秘籍》, 在关于CSS选择器一章中提到应该尽量避免使用ID选择器, 这我就纳闷了, 以前似乎没太注意, 书中的理由是ID选择器权重太高, 缺乏灵活性, 并且引用了一篇文章来阐述原因(原文地址:) 这里直接用原文中作者的DEMO 来讨论下,作者的意思是在页脚使用.twitter a 定义好链接颜色后,将该链接加入到页眉上时会由于页眉使用了ID选择器而受到干扰

Let’s imagine you’re building a site and one of the requirements is to have a reusable Twitter widget that needs to be placable wherever the client chooses. Let’s for example say they want to kick things off with having the widget in the header and also in-page, at the bottom of an article. The Twitter widget’s styling must remain consistent.

以下是demo的截图:

DEMO

这篇文章有一定道理, 在CSS布局时确实存在这个问题, 也不便于扩展,但是ID选择器在JS中确是最快的, 因为JS查找ID元素时一经找到就停止查找,而查找类元素则组要遍历整个DOM, 这个问题在stackoverflow的讨论() 基于css布局与js性能的考虑, 我觉得是否可以在涉及js操作的DOM节点尽可能地使用ID 选择器, 而在CSS布局上尽量避免, 比如一个HTML元素上既写ID又写Class ,ID用于JS操作, class用于css样式布局,像这样:

另外直接放个选择器的测试网站,里面有包括jq,yui等框架选择器的测试

转载地址:http://bxqax.baihongyu.com/

你可能感兴趣的文章
了解HAProxy原理及参数
查看>>
新一代組合創新架構師_學習地圖
查看>>
【CSS】CSS前期回顾(2)
查看>>
用JavaScript实现动态省市县三级联动
查看>>
shell脚本:一键安装LAMP、LNMP脚本
查看>>
CloudStack 的配置、部署与管理,以及 API 的使用
查看>>
心理成熟的十五条标准(转)
查看>>
Oracle-查看锁
查看>>
深度学习帮助人工智能走得更远
查看>>
Python从菜鸟到高手(5):数字
查看>>
使用DPM 2012 Sp1保护SQL server 2012 Sp1
查看>>
基于开源技术的上网行为管理实现方案
查看>>
Hadoop运维记录系列(十)
查看>>
Python学习笔记四(Python OS模块)
查看>>
走过13,展望14----希望是个好东西
查看>>
SQL Server 2012 AlwaysOn高可用配置之八:新建可用性组
查看>>
★核心关注点_《信息系统项目管理师考试考点分析与真题详解》
查看>>
卢松松:如何复制暴利产品
查看>>
Google Glass是工具不是玩具
查看>>
如何寻找高质量流量日入三百+
查看>>