display:none和visibility:hidden两者的区别

使用css让元素不可见的方法有很多种,裁剪、定位到屏幕外边、透明度变换等都是可以的。但是最常用两种方式就是设置元素样式为display: none或者visibility: hidden。很多公司的面试官也常常会问面试者这两者之间的区别。

display与元素的隐藏
如果给一个元素设置了display: none,那么该元素以及它的所有后代元素都会隐藏,它是前端开发人员使用频率最高的一种隐藏方式。隐藏后的元素无法点击,无法使用屏幕阅读器等辅助设备访问,占据的空间消失。

<body><div><strong>给元素设置display:none样式</strong><p>A元素</p><p style='display:none;'>B元素</p><p>C元素</p></div>
</body>

效果图:
在这里插入图片描述
visibility与元素的隐藏
给元素设置visibility: hidden也可以隐藏这个元素,但是隐藏元素仍需占用与未隐藏时一样的空间,也就是说虽然元素不可见了,但是仍然会影响页面布局。

<body><div><strong>给元素设置visibility:hidden样式</strong><p>A元素</p><p style='visibility:hidden;'>B元素</p><p>C元素</p></div>
</body>

效果图:
在这里插入图片描述
display: none与visibility: hidden的区别
很多前端的同学认为visibility: hidden和display: none的区别仅仅在于display: none隐藏后的元素不占据任何空间,而visibility: hidden隐藏后的元素空间依旧保留 ,实际上没那么简单,visibility是一个非常有故事性的属性

1、visibility具有继承性,给父元素设置visibility:hidden;子元素也会继承这个属性。但是如果重新给子元素设置visibility: visible,则子元素又会显示出来。这个和display: none有着质的区别

2、visibility: hidden不会影响计数器的计数,如图所示,visibility: hidden虽然让一个元素不见了,但是其计数器仍在运行。这和display: none完全不一样

    <body><div><strong>给元素设置visibility:hidden样式</strong><ol><li>元素1</li><li style="visibility:hidden;">元素2</li><li>元素3</li><li>元素4</li></ol></div><div><strong>给元素设置display:none样式</strong><ol><li>元素1</li><li style="display:none;">元素2</li><li>元素3</li><li>元素4</li></ol></div></body>

在这里插入图片描述
3、CSS3的transition支持visibility属性,但是并不支持display,由于transition可以延迟执行,因此可以配合visibility使用纯css实现hover延时显示效果。提高用户体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/406710.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python应用领域介绍

From: http://zhidao.baidu.com/question/62447250 Python作为一种功能强大且通用的编程语言而广受好评&#xff0c;它具有非常清晰的语法特点&#xff0c;适用于多种操作系统&#xff0c;目前在国际上非常流行&#xff0c;正在得到越来越多的应用。下面就让我们一起来看看它的…

汇编常见伪指令

汇编常见伪指令 转自: http://blog.chinaunix.net/uid-20547722-id-1647296.html 一、与宏有关的伪指令在宏定义时&#xff0c;为了满足某种特殊需要&#xff0c;汇编语言还提供了几个伪指令。 9.3.1 局部标号伪指令LOCAL 在宏定义体中&#xff0c;如果存在标号&#xff0c;则…

运维秘籍:防止数据丢失“六脉神剑”

服务器数据存储安全是保障服务器正常运行的重要的环节&#xff0c;同时也是企业网络信息化建设的核心。每一家企业的管理层人员都非常重视存储在服务器的重要数据&#xff0c;包括&#xff1a;各类管理中所产生的机密办公文件、经营中所积累的客户资料、研发中所涉及的重要文件…

CSS中设置border属性为0与none的区别

在我们设置CSS的时候&#xff0c;对标签元素不设置边框属性或者取消边框属性一般设置为&#xff1a;border:none;或border:0;两种方法均可。 border:none;与border:0;的区别体现有两点&#xff1a;一是理论上的性能差异&#xff1b;二是浏览器兼容性的差异。 1.性能差异 【b…

windows下Python+Editplus windows Python开发环境

From: http://www.jb51.net/softjc/34898.html 点评&#xff1a;Python的安装程序以及源代码可以从其官方网站http://www.python.org/获取。以Windows XP、Python 3.1.3为例&#xff0c;在Windows下安装Python的过程如下。&#xff08;1&#xff09;从Python官方网站 http://…

Lightbox JS v2.0

概要&#xff1a;Lightbox JS 是一个简单而又谦恭的用来把图片覆盖在当前页面上的脚本. 它能被快速安装并且运作于所有流行的浏览器.最新更新 Version 2.0图片集: 分组相关的图片并且能轻松的导航它们 视觉特效: 奇特的自适应调整 向后兼容: yes! 点击这里查看实例演示如何使用…

求和

Problem Description 求Sn222222…22…222&#xff08;有n个2&#xff09;的值。 例如&#xff1a;222222222222222&#xff08;n5&#xff09;&#xff0c;n由键盘输入。 Input n Output 和 Sample Input 5 Sample Output 24690 #include <iostream> using namespace s…

PHP Fatal error: Uncaught think\\exception\\ErrorException: error_log相关解决方法

解决方法&#xff1a;切换到tp5目录然后使用chmod -R 777 tp5来解决&#xff0c;当然不太建议这样做&#xff0c;这不符合我们在线上的操作方式。一种比较推荐的做法是执行chmod -R daemon:daemon tp5来进行处理&#xff0c;这是因为在Mac上默认的Apache用户为daemon&#xff0…

React开发(150):判断方法有避免报错

this.props.onHandleDelete&&this.props.onHandleDelete();

《算法》C++代码 前言

现在大二正在上《数据结构》课&#xff0c;课内的书上代码实现很喜欢无脑用类、变量名字很长&#xff0c;而且常常实现太繁琐&#xff0c;并且代码有些无法运行&#xff0c;这些对于老手无所谓&#xff0c;但初学者看起来却会很不舒服。因此写点自己的代码&#xff0c;大家可以…

Linux下的分区工具

Linux下的分区工具 来源:http://www.cnblogs.com/rootq/articles/1487201.html[rootlocalhost gxlinux]# df -Th#查看已经挂载上的文件分区大小以及格式(当然你的系统必须有空闲的空间不用了)文件系统 类型 容量 已用 可用 已用% 挂载点/dev/sda1 ext3 2.9G 2…

Linux常用命令大全(非常全!!!)

linux系列之常用运维命令整理笔录 Linux常用命令大全&#xff08;非常全&#xff01;&#xff01;&#xff01;&#xff09; 最近都在和Linux打交道&#xff0c;感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制&#xff0c;当然&#xff0c;这也是…

旋转动画用控件RotateView

旋转动画用控件RotateView 最终效果&#xff1a; 源码&#xff1a; RotateView.h 与 RotateView.m // // RotateView.h // RotateAnimationView // // Created by YouXianMing on 14/12/8. // Copyright (c) 2014年 YouXianMing. All rights reserved. //#import <UIKit…

UPS分类:直流UPS和交流UPS

以下资料来源于IT168术语详解&#xff1a;http://detail.it168.com/UPS从结构上一般分为直流UPS(DC-UPS)和交流UPS(AC-UPS)两大类。(1)直流UPS直流不间断电源由两个基本单元组成。分别是整流器、蓄电池。其原理结构方框图如下&#xff1a;其工作过程是&#xff1a;当市电正常时…

在python中可以使用urllib方便的实现图片和flash下载

非线程安全import urllib url “http://www.udooo.com/cooperate/qq/images/081128/left.swf” path “c:/spider/left.swf” data urllib.urlopen(url).read() f file(path,”wb”) f.write(data) f.close()线程安全python中还有更简洁的方法&#xff1a;import urllib ur…

HTTP1.0和HTTP1.1和HTTP2.0的区别

HTTP1.0和HTTP1.1和HTTP2.0的区别 1 HTTP1.0和HTTP1.1的区别 1.1 长连接(Persistent Connection) HTTP1.1支持长连接和请求的流水线处理&#xff0c;在一个TCP连接上可以传送多个HTTP请求和响应&#xff0c;减少了TCP的建立和关闭连接的消耗和延迟&#xff0c;在HTTP1.1中默…

PowerShell实战1:Ping_Test

功能&#xff1a;批量测试远程主机的Ping值&#xff0c;以及根据TTL值来判断是否为Windows主机。使用&#xff1a;在C:\IP.txt中加入需要测试的主机IP或域名&#xff0c;一行一个。例如&#xff1a; www.google.com www.baidu.com www.cha123.com www.yahoo.com www.msn.com源码…