display的主要属性:

1、none:

  • 不显示;
  • 不保留其在页面中的位置,即相当于html文档中没有这个元素;
  • visible:hidden虽然也不显示;但依然保存着他的位置和大小。

2、block:

  • 表示块级元素;
  • 每个元素默认占据一行。是div、h等块级元素的默认值;
  • 允许设置width、height;
  • 通过设置float、width可以将多个块级元素在一行内显示;
  • 常见块级元素:p, h1~h6, div, ul,table ,ol

3、inline:

  • 行内元素;
  • 与其他元素在一行显示;
  • 不能设置width、height。其宽度取决于内容的宽度,高度取决于内容的高度;
  • 行高只能通过line-height来设置;

4、inline-block:

  • 行内元素;
  • 与其他元素在一行显示;
  • 允许设置其高度、宽度;

5、可变元素:

  根据上下文语境决定该元素为块元素或者内联元素。包括 applet、 button 、 iframe 、 map 、 object、 script 等,一旦有上下文确定为块级元素或者内联元素,就按照其显示。后续研究。

不错的文章:

http://zhidao.baidu.com/link?url=bm6LggMhY7tfe6OMdva3UPDNEjv6AELojFHMwnSn4nGK3A0re28FMQRQGjWa8jXrruiIxac9nHpmyKwT1zhkua

http://blog.sina.com.cn/s/blog_61cc3ecf0100gih1.html

http://www.cnblogs.com/wkylin/archive/2011/05/12/2044328.html

示例:

1、代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>display 学习</title>
<style type="text/css">
.block{
display: block;
}
.inline{
display: inline;
}
.none{
display: none;
}
.back{
background-color:greenyellow;
border: solid gray 2px;
}
.float{
float: left;
width: 50%;
box-sizing: border-box;
}
.inlineblock{
display:inline-block;
}
</style>
</head> <body>
<div id="div_1" class="back">
div_1: &nbsp;&nbsp;&nbsp;&nbsp;1:默认情况下我是块级元素 ; 2:父元素有多宽,我就有多宽,除非设置我的宽度;3:我的下面的兄弟元素必须另起一行,除非设置我和下面兄弟元素的float。
<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;O(∩_∩)O哈哈~ &nbsp;&nbsp;我就是这么霸道。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;温柔的一面是宽度、高度随便你设置
</div>
<div id="div_2" >
div_2: &nbsp;&nbsp;&nbsp;&nbsp;我只能另起一行了
</div>
<div id="div_3" class="inline back">
div_3: &nbsp;&nbsp;&nbsp;&nbsp;1、display: inline将我的默认块级元素属性改为行内元素了 ,2:我不允许设置我的宽度。因为内容的宽度就是我的宽度;高度也不允许设置,有几行就有多高;3、我允许下面的兄弟元素与我一行。
</div>
<div id="div_4" class="inline back" style="border-color: red;">
div_4: &nbsp;&nbsp;&nbsp;&nbsp;我上面的兄弟找我,谁让我和上面的兄弟都是行内元素呢。另外告诉你们一个秘密,我下面还有一个兄弟 div_5,被隐藏了。连在文档流中的位置都没有了。
</div>
<div id="div_5" class="back none">
div_5:&nbsp;&nbsp;&nbsp;&nbsp;悲催,不显示我就算了,居然连个位置都没有。记住了,以后要给我留个位置就不要设display: none;,而是 visibility:hidden
</div>
<div id="div_6">
div_5连个坑都没有占着,我只好挨着div_4了
</div>
<div id="div_7" class="float back" style="height: 100px;">
div_7:&nbsp;&nbsp;&nbsp;&nbsp; 谁说块级元素只能占据一行的,只要设置我的width,float,就会让下面的兄弟元素和我站在一行上
</div>
<div id="div_8" class="float back" style="height: 50px;">
div_8:&nbsp;&nbsp;&nbsp;&nbsp; 先不说了我要上去了,谁让我们哥俩设了float,偏偏width的和<=父元素的width,&nbsp;&nbsp;O(∩_∩)O哈哈~
</div>
<div id="div_9" class="float back" style="height: 50px;">
div_9:&nbsp;&nbsp;&nbsp;&nbsp; div_7的右边的空间还能塞下我,我也上去挤一挤;&nbsp;&nbsp;O(∩_∩)O哈哈~
</div>
<div id="div_10" class="inlineblock back" >
div_10:&nbsp;&nbsp;&nbsp;&nbsp; 1:像块级元素一样可以设置我的height、width; 2:像行内元素一样允许我下面的兄弟元素和我一行;
3:就是一个行内元素,只是允许设置高、宽
</div>
<span>我是行内元素</span>
</body>
</html>

2、效果:

CSS——display的更多相关文章

  1. CSS display:inline-block

    CSS display:inline-block 在css布局里,我们经常看到代码 「display:inline-block; *display:inline; zoom:1; 」,大多人会说上面的 ...

  2. [转]CSS Display(显示) 与 Visibility(可见性)

    CSS Display(显示) 与 Visibility(可见性) display属性设置一个元素应如何显示,visibility属性指定一个元素应可见还是隐藏. 隐藏元素 - display:non ...

  3. CSS display:inline和float:left两者区别探讨

     本文和大家重点讨论一下CSS display:inline和float:left两者的区别,CSS display是指显示状态,inline表示内联,特点是紧贴着前一个内联元素,通常默认的内联元素有 ...

  4. CSS Display(显示) 与 Visibility(可见性)

    display属性设置一个元素应如何显示,visibility属性指定一个元素应可见还是隐藏. Box 1 Box 2 Box 3 隐藏元素 - display:none或visibility:hid ...

  5. [CSS3] CSS Display Property: Block, Inline-Block, and Inline

    Understanding the most common CSS display types of block, inline-block, and inline will allow you to ...

  6. CSS display:table属性用法- 轻松实现了三栏等高布局

    display:table:此元素会作为块级表格来显示(类似 <table>); display:table-cell属性指让标签元素以表格单元格的形式呈现,类似于td标签.目前IE8+以 ...

  7. CSS display:inline-block的元素特点:

    将对象呈递为内联对象,但是对象的内容作为块对象呈递.旁边的内联对象会被呈递在同一行内,允许空格. 在CSS中,块级对象元素会单独占一行显示,多个block元素会各自新起一行,并且可以设置width,h ...

  8. CSS DISPLAY AND POSITIONING

    CSS DISPLAY AND POSITIONING Review: Layout Great job! In this lesson, you learned how to control the ...

  9. CSS Display(显示)和Visibility(可见性)

    CSS Display(显示)和Visibility(可见性) 一.简介 display属性设置一个元素应如何显示(隐藏不占用空间),visibility属性指定一个元素应可见还是隐藏(隐藏占用空间) ...

  10. css display属性详解

    css display属性在对css做layout设计时非常重要,它的值有以下几种: Value Description Play it inline Default value. Displays ...

随机推荐

  1. Codeforces Round #374 (Div. 2) D. Maxim and Array 线段树+贪心

    D. Maxim and Array time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  2. 阿里云分布式缓存OCS与DB之间的数据一致性

    [分布式系统的数据一致性问题]   OCS概要介绍 据AlertSite网络分析公司表示,Facebook的响应时间在2010年平均为1秒钟,到2011年中期已提高到了0.73秒.对比来看,响应时间占 ...

  3. js执行环境、作用域

    js执行环境.作用域 执行环境:是javascript中的一个重要的概念,<javascript高级程序设计第三版>的定义是:执行环境定义了变量或函数有权访问的其他数据,决定了他们各自的行 ...

  4. html5 frameset5内嵌框架集

    利用html5 frameset内嵌框架简单做一个网页,网页的布局大体如下: 我们可以将其分为四个部分: 第一部分:top图片栏 第二部分:left链接栏 第三部分:right内容栏 第四部分:网页整 ...

  5. 下载 OS X 10.11 GM

    不清楚为什么OS X 10.11 GM版本是Coming Soon,可以通过下面简单方法启用App Store下载. 在终端执行: $ sudo softwareupdate --clear-cata ...

  6. node.js 操作excel

    首先安装依赖库node-xlsx npm install node-xlsx 在操作文件中直接引用 var xlsx = require("node-xlsx"); 读取excel ...

  7. Shell check IP

    #! /bin/bash checkip() {        if echo $1 |egrep -q '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3 ...

  8. php mysql 查询

    抓取结果集对象中数据并且转换数组 $row = mysqli_fetch_assoc(结果集对象); 从结果集对象中抓取一行记录->转换关联数组 $row = mysqli_fetch_row( ...

  9. 不同OpenCV版本和不同VS版本之间进行配置的注意事项

    下面内容为不同系统和不同版本VS+不同版本OpenCV之间进行配置时的注意事项.本教程中开始提到如果VS版本和OpenCV版本相匹配的话,只要按上述步骤配置都是没有问题的.但是如果说版本不匹配的话,就 ...

  10. jsp中引入JavaScript的方法

    1:在页面中直接嵌入JavaScript <script language="javascript">..........</script> 2:链接外部J ...