前端面试必备:CSS选择器优先级与隐藏元素技巧
需积分: 10 188 浏览量
更新于2024-08-31
收藏 28KB DOCX 举报
"该文档包含了2016年BAT(百度、阿里巴巴、腾讯)以及其他互联网公司的前端面试中涉及的CSS相关题目,旨在测试应聘者对于前端开发,特别是CSS的掌握程度。"
在前端开发中,CSS(层叠样式表)扮演着至关重要的角色,它用于控制网页元素的布局和样式。以下是从文档中提炼出的关键知识点:
1. **CSS样式的应用方式**:
- 外部样式表:通过`<link>`标签引入外部CSS文件,使样式可复用且易于管理。
- 内部样式表:将CSS代码写在`<head>`标签内的`<style>`标签中,适用于整个页面的样式统一。
- 内联样式:直接在HTML元素中使用`style`属性定义样式,针对性强但不易维护。
2. **CSS选择器**:
- 派生选择器:如`p`或`div`等HTML标签选择器。
- ID选择器:使用`#idname`选择特定ID的元素。
- 类选择器:使用`.classname`选择具有特定类的元素。
- 属性选择器:如`[attr=value]`,较少使用。
- 后代选择器(如`div.a`)、群组选择器(如`p, div, #a`)。
**选择器优先级**:
- 特殊性原则:选择器越具体,优先级越高。
- 计算方法:派生选择器1,类选择器10,ID选择器100。
- 如`div.test1.spanvar`优先级为111,`span#xxx.songsli`优先级为1111,`#xxxli`优先级为101。
3. **隐藏DOM元素**:
- `display: none`:元素不占用空间,内容完全不可见。
- `visibility: hidden`:元素占用空间,内容不可见。
- 技巧性隐藏:如设置宽高为0,透明度为0,或负`z-index`。
4. **超链接状态问题**:
- 访问过后的超链接失去`:hover`和`:active`样式,解决办法是调整CSS属性顺序,即`L-V-H-A`(link, visited, hover, active)。
5. **CSS Hack**:
- CSS Hack是针对不同浏览器间CSS解析差异而采取的兼容策略。
- IE6 Hack:如`_property`,仅IE6识别。
- IE7 Hack:使用`*property`,IE7及更低版本识别。
- IE8 Hack:使用`!important`配合条件注释,或`*+html`选择器。
以上是文档中的部分核心CSS知识点,它们涵盖了基础样式应用、选择器的使用、样式优先级、元素隐藏方法以及CSS在不同浏览器间的兼容处理。对于前端开发者来说,熟练掌握这些知识是提升项目质量和效率的关键。
2022-04-06 上传
2022-10-26 上传
2022-09-11 上传
一介青烟小生
- 粉丝: 117
- 资源: 18
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析