声如洪钟 發表於 2026-5-3 22:16:47

CSS 中的 display、visibility,和opacity 的区别解析

<p>CSS 中的 <code>display</code>、<code>visibility</code> 和 <code>opacity</code> 是用来控制元素显示和隐藏的属性,它们有着不同的作用和效果。</p>
<p><code>display</code>:</p>
<ul><li><code>display</code>&nbsp;属性用于定义元素应该生成的框的类型。</li><li>它可以控制元素是以什么方式显示,例如&nbsp;<code>block</code>、<code>inline</code>、<code>inline-block</code>&nbsp;等。</li><li>通过改变&nbsp;<code>display</code>&nbsp;属性,可以改变元素在布局中所占的空间和显示方式。</li></ul>
<div class="jb51code"><pre class="brush:css;">.element {
display: none; /* 元素隐藏,并且不占据布局空间 */
}
.element {
display: block; /* 元素以块级元素显示 */
}</pre></div>
<p><code>1.visibility</code>:</p>
<ul><li><code>visibility</code>&nbsp;属性用于设置元素的可见性。</li><li>当设置为&nbsp;<code>visible</code>&nbsp;时,元素可见;当设置为&nbsp;<code>hidden</code>&nbsp;时,元素不可见,但仍占据布局空间。</li><li>与&nbsp;<code>display</code>&nbsp;不同的是,设置为&nbsp;<code>hidden</code>&nbsp;的元素仍然会占据布局空间,只是在页面上不可见。</li></ul>
<div class="jb51code"><pre class="brush:css;">.element {
visibility: visible; /* 元素可见 */
}
.element {
visibility: hidden; /* 元素不可见,但仍占据布局空间 */
}</pre></div>
<p><code>1.opacity</code>:</p>
<ul><li><code>opacity</code>&nbsp;属性用于设置元素的透明度。</li><li>取值范围是 0(完全透明)到 1(完全不透明)之间。</li><li>改变元素的&nbsp;<code>opacity</code>&nbsp;可以使元素整体变得更加透明或半透明。</li></ul>
<div class="jb51code"><pre class="brush:css;">.element {
opacity: 0.5; /* 元素半透明显示 */
}</pre></div>
<p>综合来说,<code>display</code> 主要影响元素在布局中的显示方式,可以完全隐藏元素并且不占据空间;<code>visibility</code> 控制元素的可见性,隐藏元素时仍然占据空间;<code>opacity</code> 控制元素的透明度,改变元素整体的透明程度。在具体应用中,根据需要选择合适的属性来控制元素的显示和隐藏。</p>
頁: [1]
查看完整版本: CSS 中的 display、visibility,和opacity 的区别解析