css中,有哪些方式可以隐藏页面元素?区别?

通过css实现隐藏元素方法有如下:六种方法

  • display:none
  • visibility:hidden
  • opacity:0
  • 设置height、width模型属性为0
  • position:absolute
  • clip-path

display:none

设置元素的displaynone是最常用的隐藏元素的方法

.hide {
    display:none;
}

将元素设置为display:none后,元素在页面上将彻底消失

元素本身占有的空间就会被其他元素占有,也就是说它会导致浏览器的回流和重绘

消失后,自身绑定的事件不会触发,也不会有过渡效果

特点:元素不可见,不占据空间,无法响应点击事件

visibility:hidden

设置元素的visibility:hidden也是一种常用的隐藏元素的方法

从页面上仅仅是隐藏该元素,DOM结果均会存在,只是当时在一个不可见的状态,不会触发重排,但是会触发重绘

.hidden{
    visibility:hidden
}

给人的看的效果是隐藏了,所以他自身的事件不会触发

特点:元素不可见,占据页面空间,无法响应点击事件

opacity:0

opacity属性表示元素的透明度,将元素的透明度设置为0后,在我们用户眼中,元素也是隐藏的

不会引发重排,一般情况下也会引发重绘

如果利用 animation 动画,对 opacity 做变化(animation会默认触发GPU加速),则只会触发 GPU 层面的 composite,不会触发重绘

.transparent {
    opacity:0;
}

由于其仍然是存在于页面上的,所以他自身的的事件仍然是可以触发的,但被他遮挡的元素是不能触发其事件的

需要注意的是:其子元素不能设置opacity来达到显示的效果

特点:改变元素透明度,元素不可见,占据页面空间,可以响应点击事件

设置height、width属性为0

将元素的marginborderpaddingheightwidth等影响元素盒模型的属性设置成0,如果元素内有子元素或内容,还应该设置其overflow:hidden来隐藏其子元素

.hiddenBox {
    margin:0;     
    border:0;
    padding:0;
    height:0;
    width:0;
    overflow:hidden;
}

特点:元素不可见,不占据页面空间,无法响应点击事件

position:absolute

将元素移出可视区域

.hide {
   position: absolute;
   top: -9999px;
   left: -9999px;
}

特点:元素不可见,不影响页面布局

clip-path

通过裁剪的形式

.hide {
  clip-path: polygon(0px 0px,0px 0px,0px 0px,0px 0px);
}

特点:元素不可见,占据页面空间,无法响应点击事件

参考内容:

  • https://www.cnblogs.com/a-cat/p/9039962.html
  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS 的 display 属性用于控制元素的显示方式,常用的值包括: 1. block:将元素显示为块级元素,即在页面显示为独占一行的盒子,可以设置宽度和高度等属性。 2. inline:将元素显示为内联元素,即在页面显示为一行的盒子,宽度和高度由内容决定,不可以设置宽度和高度等属性。 3. inline-block:将元素显示为内联块元素,即在页面显示为一行的盒子,可以设置宽度和高度等属性。 4. none:将元素隐藏,即不在页面显示,但是元素仍然存在,可以通过 JavaScript 等方式操作。 5. flex:将元素显示为弹性盒子,可以方便地进行页面布局和对齐操作。 6. grid:将元素显示为网格布局,可以方便地进行页面布局和对齐操作。 display 属性的不同取值有不同的特点和用途,主要的区别在于: 1. 元素的排列方式:block、inline-block 和 inline 元素的排列方式不同,可以实现不同的页面布局效果。 2. 宽度和高度的控制:block 元素可以设置宽度和高度,而 inline 元素的宽度和高度由内容决定。 3. 显示和隐藏:none 值可以隐藏元素,而其他值则可以将元素显示出来。 4. 页面布局:flex 和 grid 布局可以方便地进行页面布局和对齐操作,更加灵活和高效。 总之,在 CSS ,display 属性的取值非常重要,它不仅可以影响元素的显示和隐藏,还可以控制元素的排列方式页面布局,开发者需要根据实际需求选择合适的值,以实现所需的页面效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值