CSS之display属性

来源:互联网 发布:ug五轴联动编程 编辑:程序博客网 时间:2024/06/05 08:18

display 属性规定元素应该生成的框的类型。

描述

none

此元素不会被显示。

block

此元素将显示为块级元素,此元素前后会带有换行符。

inline

默认。此元素会被显示为内联元素,元素前后没有换行符。

inline-block

行内块元素。(CSS2.1 新增的值)

list-item

此元素会作为列表显示。

run-in

此元素会根据上下文作为块级元素或内联元素显示。

compact

CSS 中有值 compact,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。

marker

CSS 中有值 marker,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。

table

此元素会作为块级表格来显示(类似 <table>),表格前后带有换行符。

inline-table

此元素会作为内联表格来显示(类似 <table>),表格前后没有换行符。

table-row-group

此元素会作为一个或多个行的分组来显示(类似 <tbody>)。

table-header-group

此元素会作为一个或多个行的分组来显示(类似 <thead>)。

table-footer-group

此元素会作为一个或多个行的分组来显示(类似 <tfoot>)。

table-row

此元素会作为一个表格行显示(类似 <tr>)。

table-column-group

此元素会作为一个或多个列的分组来显示(类似 <colgroup>)。

table-column

此元素会作为一个单元格列显示(类似 <col>)

table-cell

此元素会作为一个表格单元格显示(类似 <td> 和 <th>)

table-caption

此元素会作为一个表格标题显示(类似 <caption>)

inherit

规定应该从父元素继承 display 属性的值。


1、display被设置为block(块)时,容器中所有的元素将会被当作一个单独的块,就像<div>元素一样,它会在那个点被放入到页面中。(实际上你可以设置<span>的display:block,使其可以像<div>一样工作。)比较常用于<a><span>这两个标签——因为这两个标签非块元素,如果不用display:block定义一下,那么定义width、height等和长宽相关的css属性时会发现完全不生效。

block元素的特点是:总是在新行上开始;高度,行高以及顶和底边距都可控制;宽度缺省是它的容器的100%,除非设定一个宽度。<div>, <p>, <h1>, <form>, <ul> 和 <li>是块元素的例子。(block是块!就是说占据浏览器的一整行)

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

inline元素的特点是:和其他元素都在一行上;高,行高及顶和底边距不可改变;宽度就是它的文字或图片的宽度,不可改变。<span>, <a>, <label>, <input>, <img>,<strong> 和<em>是inline元素的例子。

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

eg1:如果要做一个竖形的导航栏

<html><head><style type="text/css">a {display:block;}</style></head><body><a href="#">a</a><a href="#">b</a> <a href="#">c</a> <a href="#">d</a> <a href="#">e</a> <a href="#">f</a></body></html>


如果我们把上面代码中a的style效果注释掉:


display:none和visible:hidden都能把网页上某个元素隐藏起来,但两者有区别:visible属性是隐藏元素但保持元素的浮动位置,而display实际上是设置元素的浮动特征。

  • display:none ---> 不为被隐藏的对象保留其物理空间,即该对象在页面上彻底消失,通俗来说就是看不见也摸不到。
  • visible:hidden ---> 使对象在网页上不可见,但该对象在网页上所占的空间没有改变,通俗来说就是看不见但摸得到。元素被隐藏之后,就不能再接收到其它事件了,当其被设为"hidden"的时候,就不能再接收响应到事件了,因此也就无法通过JS令其显示出来。
eg2:
<html><head><meta charset="utf-8"><title>display:none和visible:hidden的区别</title></head><body ><span style="display:none; background-color:Blue">display隐藏区域</span><span style=" background-color:Green">display显示区域</span><br /><span style="visibility:hidden; background-color:Blue">visible隐藏区域</span><span style="background-color:Green">visible显示区域</span></body></html>





0 0
原创粉丝点击