CSS Display(显示)


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS Display(显示)</title>
    <style>
        /*隐藏元素*/
        p.a{visibility: hidden;}
        p.b{display: none;}
        li.a{display: inline;}
        span.b{display: block;}
        p.c{display: inline;}
        table,th,td{
            border: 1px solid blueviolet;

        }

        tr.a{
            visibility: collapse;
        }
    </style>
</head>
<body>
<h2>Demo1 隐藏元素</h2>
<p>这是一个可见的元素</p>
<p class="a">这是一个隐藏元素</p>
<p>注意,实例中的隐藏段落仍然占用空间</p>
<p class="b">这是一个元素</p>
<p>注意,实例中的隐藏段落不占用空间</p>


<h2>Demo2 改变一个元素显示</h2>
<ul>
    <li class="a">Coffee</li>
    <li class="a">Tea</li>
    <li class="a">Drink</li>
</ul>

<p>li元素原本是块元素会自动换行的 但display:inline 把li元素作为内联元素显示 不换行</p>

<h2>Nirvana</h2>
<span class="b">Record: MTV Unplugged in New York</span>
<span class="b">Year: 1993</span>
<h2>Radiohead</h2>
<span class="b">Record: OK Computer</span>
<span class="b">Year: 1997</span>

<p>span元素原本是内联元素不换行,但display:block 把span元素作为块元素显示 换行</p>

<p class="c">display 属性的值为 "inline"的结果</p>
<p class="c">两个元素显示在同一水平线上</p>

<span class="b">display 属性值为 "block" 的结果</span>
<span class="b">这两个元素之间的换行符。</span>

<br>

<table>
    <tr>
        <th>FirstName</th>
        <th>LastName</th>

    </tr>

    <tr>
        <td>Joe</td>
        <td>Smith</td>
    </tr>

    <tr class="a">
        <td>Tina</td>
        <td>Smith</td>
    </tr>
</table>

<p><b>注意:</b> IE8 及其更早版本需要通过指定 !DOCTYPE 才可以支持 visibility:collapse。</p>

</body>
</html>

<!--

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

-->


<!--

隐藏元素 - display:none或visibility:hidden
隐藏一个元素可以通过把display属性设置为"none",或把visibility属性设置为"hidden"。
但是请注意,这两种方法会产生不同的结果。

visibility:hidden可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。
也就是说,该元素虽然被隐藏了,但仍然会影响布局。

实例
h1.hidden {visibility:hidden;}


display:none可以隐藏某个元素,且隐藏的元素不会占用任何空间。
也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。

实例
h1.hidden {display:none;}

-->

<!--

CSS Display - 块和内联元素
块元素是一个元素,占用了全部宽度,在前后都是换行符。

块元素的例子:

<h1>
<p>
<div>
内联元素只需要必要的宽度,不强制换行。

内联元素的例子:

<span>
<a>

-->


<!--


如何改变一个元素显示
可以更改内联元素和块元素,反之亦然,可以使页面看起来是以一种特定的方式组合,并仍然遵循web标准。

下面的示例把列表项显示为内联元素:

实例
li {display:inline;}


下面的示例把span元素作为块元素:

实例
span {display:block;}

-->


<!--


块级元素(block)特性:

总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示;
宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;
内联元素(inline)特性:

和相邻的内联元素在同一行;
宽度(width)、高度(height)、内边距的top/bottom(padding-top/padding-bottom)和
外边距的top/bottom(margin-top/margin-bottom)都不可改变,就是里面文字或图片的大小;


块级元素主要有:

 address , blockquote , center , dir , div , dl , fieldset , form ,
 h1 , h2 , h3 , h4 , h5 , h6 , hr , isindex , menu , noframes , noscript , ol , p , pre , table , ul , li


内联元素主要有:

a , abbr , acronym , b , bdo , big , br , cite , code , dfn , em ,
font , i , img , input , kbd , label , q , s , samp , select , small ,
span , strike , strong , sub , sup ,textarea , tt , u , var


可变元素(根据上下文关系确定该元素是块元素还是内联元素):
applet ,button ,del ,iframe , ins ,map ,object , script


CSS中块级、内联元素的应用:

利用CSS我们可以摆脱上面表格里HTML标签归类的限制,自由地在不同标签/元素上应用我们需要的属性。

主要用的CSS样式有以下三个:

display:block  -- 显示为块级元素
display:inline  -- 显示为内联元素
display:inline-block -- 显示为内联块元素,表现为同行显示并可修改宽高内外边距等属性
我们常将<ul>元素加上display:inline-block样式,原本垂直的列表就可以水平显示了


-->



<!--

对于 CSS 里的 visibility 属性,通常其值被设置成 visible 或 hidden。

visibility: hidden 相当于 display:none,能把元素隐藏起来,但两者的区别在于:

 1、display:none 元素不再占用空间。
 2、visibility: hidden 使元素在网页上不可见,但仍占用空间。
然而,visibility 还可能取值为 collapse 。


当设置元素 visibility: collapse 后,一般的元素的表现与 visibility: hidden 一样,
也即其会占用空间。但如果该元素是与 table 相关的元素,
例如 table row、table column、table column group、table column group 等,
其表现却跟 display: none 一样,也即其占用的空间会释放。


在不同浏览器下,对 visibility: collapse 的处理方式不同:
 1、visibility: collapse 的上述特性仅在 Firefox 下起作用。
 2、在 IE 即使设置了 visibility: collapse,还是会显示元素。
 3、在 Chrome 下,即使会将元素隐藏,但无论是否是与 table 相关的元素,
 visibility: collapse 与 visibility: hidden 没有什么区别,即仍会占用空间。



-->


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,076评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,658评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,732评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,493评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,591评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,598评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,601评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,348评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,797评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,114评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,278评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,953评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,585评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,202评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,442评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,180评论 2 367
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,139评论 2 352

推荐阅读更多精彩内容