浅谈CSS的display属性

display可能的属性值:

描述
none
缺省值。像行内元素类型一样显示
block 
块类型。默认宽度为父元素宽度,可设置宽高,换行显示
inline
行内元素类型。默认宽度为内容宽度,不可设置宽高,同行显示
inline-block
默认宽度为内容宽度,可以设置宽高,同行显示
list-item 
像块类型元素一样显示,并添加样式列表标记
inherit 
规定应该从父元素继承 display 属性的值
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>)


display:block、display:inline、display:inline-block等都是很常见的。

1display:block

block元素会独占一行,多个block元素会各自新起一行。默认情况下,block元素宽度自动填满其父元素宽度。

block元素可以设置widthheight属性,即使设置了宽度,仍然是独占一行。

block元素可以设置marginpadding属性。

2display:inline

inline元素不会独占一行,多个相邻的inline元素会排列在同一行里,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化。

inline元素设置widthheight属性无效。

inline元素的marginpadding属性,水平方向的padding-leftpadding-rightmargin-leftmargin-right都产生边距效果;但竖直方向的padding-toppadding-bottommargin-topmargin-bottom不会产生边距效果。

3display:inline-block

将对象呈现为inline对象,但是对象的内容作为block对象呈现。之后的内联对象会被排列在同一行内,可以设置widthheight属性,也可以设置marginpadding属性。


  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>    
  4.     <style type="text/css">    
  5.         #span1 {  
  6.             display:list-item;  
  7.             list-style-position:inside;  
  8.         }  
  9.         #span2 {  
  10.             display:list-item;  
  11.             list-style:square;  
  12.             list-style-position:inside;  
  13.         }  
  14.         #main {   
  15.             display: table;   
  16.             border-collapse: collapse;  
  17.         }   
  18.         #row1 {   
  19.             display: table-row;   
  20.             border: 1px solid grey;  
  21.         }   
  22.         #row2 {   
  23.             display: table-row;   
  24.             border: 1px solid grey;  
  25.         }   
  26.         #col1 {   
  27.             display: table-cell;   
  28.             border: 1px solid grey;  
  29.         }   
  30.         #col2 {   
  31.             display: table-cell;   
  32.             border: 1px solid grey;  
  33.         }   
  34.     </style>    
  35. </head>    
  36. <body>    
  37.     <span id="span1">first</span>  
  38.     <span id="span2">second</span>  
  39.     <div id="main">   
  40.         <div id="row1">  
  41.             <div id="col1">one</div>   
  42.             <div id="col2">two</div>   
  43.         </div>   
  44.         <div id="row2">  
  45.             <div id="col1">three</div>   
  46.             <div id="col2">four</div>   
  47.         </div>   
  48.     </div>   
  49. </body>  
  50. </html>  
注意:

设置display:list-item时,默认list-style为disc,可以设置list-style为square或circle,但一定要设置list-style-position:inside,否则list-style显示不出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值