css3规范的一个新特点是被分为若干个相互独立的模块。一方面分成若干较小的模块较利于规范及时更新和发布,及时调整模块的内容,这些模块独立实现和发布,也为日后CSS的扩展奠定了基础。另外一方面,由于受支持设备和浏览器厂商的限制,没备或者厂商可以有选择的支持一部分模块,支持css3的一个子集,这样有利于CSS3的推广。
CSS3--3种隐藏元素方法的区别
display:none
1DOM结构:浏览器不会渲染display:none的元素,并且不占据页面空间
2事件监听:无法对元素进行事件监听
3继承:不会被子元素继承(子元素设置display:block不会显示)
4改动:改动属性值会引起页面的重排和重绘
5过渡:无法设置过渡效果transition:display无效
visibility:hidden
1不会被渲染,但是会占据页面空间
2无法对元素设置事件监听
3可以继承,子元素设置非visibility:hidden可以显示
4改动属性只会引起页面重排
5transition:visibility会立即显示,hidden有过渡效果
opacity:0
1元素被隐藏,会占据页面空间
2可以设置事件监听
3可以继承,子元素设置opacity可以显示
4不会重绘也不会重排
5transition:opacity可以实现显示隐藏的过渡效果
6opacity会触发硬件加速
CSS3编程工具同CSS,任何一种文本编辑工具都可用来编写,如:Windows下的写字本、记事本;或其他专门用于编辑网页文本的工具,如:IntelliJIDEA、Eclipse、MyEclipse、webstorm、sublimetext;此外还有专门针对前端开发的插件,如:Emmet。