DIV中display和visibility属性差别

开发 前端
DIV中display和visibility属性差别还是挺大的,虽然Visibility和Display属性都可以达到隐藏页面元素的目的,但它们的区别在于如何回应正常文档流。

本节向大家描述一下DIV中display和visibility的差别,visibility属性是隐藏元素但保持元素的浮动位置,而display实际上是设置元素的浮动特征,虽然它们都可以达到隐藏页面元素的目的,但它们的区别在于如何回应正常文档流。

DIV中display和visibility属性差别

visibility属性:

确定元素显示还是隐藏;
visibility="visible|hidden",visible显示,hidden隐藏。

当visibility被设置为"hidden"的时候,元素虽然被隐藏了,但它仍然占据它原来所在的位置。

例如:

  1. <scriptlanguagescriptlanguage="javascript"> 
  2. functiontoggleVisibility(me)  
  3. {  
  4. if(me.style.visibility=="hidden")  
  5. {  
  6. me.style.visibility="visible";  
  7. }  
  8. else  
  9. {  
  10. me.style.visibility="hidden";  
  11. }  
  12. }  
  13. </script> 
  14.  
  15. <DIVonclickDIVonclick="toggleVisibility(this)"
  16. style="position:relative"> 
  17. ***行文本将会触发"hidden"和"visible"属性,注意第二行的变化。  
  18. </DIV> 
  19. <DIV>因为visibility会保留元素的位置,所以第二行不会移动.</DIV> 
  20.  

 看到***行:由于"hidden"和"visible"的影响会。因为visibility会保留元素的位置,所以第二行不会移动.
注意到,当元素被隐藏之后,就不能再接收到其它事件了,所以在***行代码成为"hidden"的时候,就不能再接收响应到事件了,因此也就无法通过鼠标点击***段文本令其显示出来。#p#

display属性:

就有一点不同了。visibility属性是隐藏元素但保持元素的浮动位置,而display实际上是设置元素的浮动特征。

block:
当display被设置为block(块)时,容器中所有的元素将会被当作一个单独的块,就像<DIV>元素一样,它会在那个点被放入到页面中。(实际上你可以设置<span>的display:block,使其可以像<DIV>一样工作。

inline:
将display设置为inline,将使其行为和元素inline一样---即使它是普通的块元素如<DIV>,它也将会被组合成像<span>那样的输出流。

none:
***是display被设置:none,这时元素实际上就从页面中被移走,它下面所在的元素就会被自动跟上填充。

例如:

下面看我实例的代码和效果:
例: 

  1. <scriptlanguagescriptlanguage="javascript"> 
  2. functiontoggleDisplay(me){  
  3. if(me.style.display=="block"){  
  4. me.style.display="inline";  
  5. alert("文本现在是:'inline'.");  
  6. }  
  7. else{  
  8. if(me.style.display=="inline"){  
  9. me.style.display="none";  
  10. alert("文本现在是:'none'.3秒钟后自动重新显示。");  
  11. window.setTimeout("blueText.style.display='block';",
  12. 3000,"javascript");  
  13. }  
  14. else{  
  15. me.style.display="block";  
  16. alert("文本现在是:'block'.");  
  17. }  
  18. }  
  19. }  
  20. </script> 
  21.  
  22. <DIV><spanidspanid="blueText"
  23. onclick="toggleDisplay(this)"  
  24. style="color:blue;position:relative;cursor:hand;"> 
  25. 蓝色</span>文字上点击来查看效果.</DIV> 
  26.  
  27.  

【编辑推荐】

  1. DIV CSS网页布局时合理架构CSS
  2. DIV+CSS排版实用技巧
  3. CSS DIV中Visibility和Display属性用法区别
  4. DIV CSS中id与class使用用原则与技巧
  5. 鼠标经过时改变DIV背景颜色的三种途径

 

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-09-14 13:05:10

VisibilityDisplayCSS DIV

2010-09-07 16:21:37

CSSDisplayVisibility

2010-09-16 10:29:47

DisplayVisibilityCSS

2010-09-16 09:58:44

CSS display

2023-11-27 00:48:46

displayvisibility

2010-09-10 15:16:51

CSSdisplay

2010-09-15 16:57:18

CSS display

2011-04-21 13:01:15

visibilitydisplay

2010-09-15 17:05:33

CSS display

2010-09-16 10:10:50

CSSdisplay

2010-09-08 12:37:27

displayCSS

2010-09-03 10:18:06

CSSdisplay:inl

2010-09-14 13:42:22

CSSdisplay属性

2010-08-23 15:51:54

paddingmargin

2018-10-12 15:20:19

前端css3css

2010-08-27 10:04:33

borderclearCSS

2010-08-25 14:26:09

CSSdisplay

2010-09-02 12:58:21

display:inlCSS

2010-09-16 10:04:50

CSSdisplay:tab

2010-09-09 09:16:27

JavaScriptdiv
点赞
收藏

51CTO技术栈公众号