web前端:CSS3--3种隐藏元素方法的区别

    作者:洛水赋神更新于: 2020-04-07 22:04:03

    Web开发

      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。

课课家教育

未登录