国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【CSS 08】display 控制布局 塊級(jí)元素 行內(nèi)元素 隱藏元素 結(jié)合JS 最大寬度 瀏覽器窗口 定位 position z-index 堆疊

這篇具有很好參考價(jià)值的文章主要介紹了【CSS 08】display 控制布局 塊級(jí)元素 行內(nèi)元素 隱藏元素 結(jié)合JS 最大寬度 瀏覽器窗口 定位 position z-index 堆疊。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

說在前面

CSS基礎(chǔ)教程系列已經(jīng)結(jié)束,接下來就是中級(jí)教程,讓我們跟上腳步,繼續(xù)努力吧!
并且最近臨近期末考試,后面十天休刊…


display

display 屬性是用于控制布局的最重要的 CSS 屬性
display 屬性規(guī)定是否/如何顯示元素

HTML 元素都有一個(gè)默認(rèn)的 display 值
具體取決于它的元素類型
大多數(shù)元素的默認(rèn) display 值為 block 或 inline

block element 塊級(jí)元素
塊級(jí)元素總是從新行開始,并占據(jù)可用的全部寬度
盡可能向左和向右伸展
例如:
<div>
<h1> - <h6>
<p>
<form>
<header>
<footer>
<section>

inline element 行內(nèi)元素
內(nèi)聯(lián)元素不從新行開始,僅占用所需的寬度
例如:
<span>
<a>
<img>

display: none; 通常同JavaScript一同使用以隱藏和顯示元素,而無需刪除和重新創(chuàng)建它們

每個(gè)元素都有一個(gè)默認(rèn)display的值,但是可以覆蓋
對(duì)于使頁面以特定方式顯示同時(shí)仍遵循 Web 標(biāo)準(zhǔn)很有用
一個(gè)常見的例子是為實(shí)現(xiàn)水平菜單而生成行內(nèi)的 <li> 元素
li {
	display: inline;
}

設(shè)置元素的 display 屬性僅會(huì)更改元素的顯示方式,而不會(huì)更改元素的種類
因此帶有 display: block; 的行內(nèi)元素不允許在其中包含其他塊元素

隱藏元素 - display:none 還是 visibility:hidden

通過將 display 屬性設(shè)置為 none 可以隱藏元素
該元素將被隱藏,并且頁面將顯示為好像該元素不在其中

visibility:hidden; 也可以隱藏元素
但是該元素仍將占用與之前相同的空間
元素將被隱藏,但仍會(huì)影響布局

利用CSS和JavaScript實(shí)現(xiàn)單擊顯示元素

<!DOCTYPE html>
<html>
<head>
<style>
#panel, .flip {
	font-size: 16px;
	padding: 10px;
	background-color: #4CAF50;
	color: white;
	border: solid 1px hotpink;
	margin: auto;
}

#panel {
	display: none;
}
</style>
</head>

<body>

<p class="flip" onclick="myFunction()">點(diǎn)擊顯示面板</p>

<div id="panel">
 <p>面板包括一個(gè)div元素,默認(rèn)情況下元素隱藏 display:none; </p>
 <p>其使用CSS進(jìn)行樣式的設(shè)置,使用JS來顯示 display:block; </p>
 <p>工作原理是帶有class="flip"的p元素?fù)碛衞nclick屬性,當(dāng)用戶點(diǎn)擊p元素(塊級(jí)元素)時(shí),將會(huì)執(zhí)行名為 myFunction()的函數(shù),該函數(shù)將id="panel"的div樣式從 display: none 改為 display: block</p>
 </div>

<script>
function myFunction() {
	document.getElementById("panel").style.display = "block";
}
</script>
</body>
</html>

max-width

使用 width、max-width 和 margin: auto
像前面所述,塊級(jí)元素始終占用可用的全部寬度(盡可能向左和向右伸展)
設(shè)置塊級(jí)元素的 width 將防止其延伸到其容器的邊緣
然后可以將外邊距設(shè)置為 auto 以將元素在其容器中水平居中
元素將占用指定的寬度,剩余空間將在兩個(gè)外邊距之間平均分配

當(dāng)瀏覽器窗口小于元素的寬度時(shí),上面這個(gè) <div> 會(huì)發(fā)生問題
瀏覽器會(huì)將水平滾動(dòng)條添加到頁面

在這種情況下,使用 max-width 可以改善瀏覽器對(duì)小窗口的處理
為了使網(wǎng)站在小型設(shè)備上可用,這一點(diǎn)很重要

ex1的寬度是固定的,不會(huì)隨著瀏覽器窗口變化而變化,而是部分長度被覆蓋
div.ex1 {
	width: 500px;
	margin: auto;
	border: 3px solid #73AD21;
}

ex2的寬度最大是500px,并且會(huì)隨著窗口縮小而縮小
div.ex2 {
	max-width: 500px;
	margin: auto;
	border: 3px solid #73AD21;
}

position

position 屬性規(guī)定應(yīng)用于元素的定位方法的類型
static、relative、fixed、absolute 或 sticky

元素其實(shí)是使用 top、bottom、left 和 right 屬性定位的
但是除非首先設(shè)置了 position 屬性,否則這些屬性將不起作用
根據(jù)不同的 position 值,它們的工作方式也不同

/* position: static;
HTML 元素默認(rèn)情況下的定位方式為 static(靜態(tài))
靜態(tài)定位的元素不受 top、bottom、left 和 right 屬性的影響
position: static 的元素不會(huì)以任何特殊方式定位
始終根據(jù)頁面的正常流進(jìn)行定位
*/

div.static {
  position: static;
  border: 3px solid #73AD21;
}
/*
position: relative; 的元素相對(duì)于其正常位置進(jìn)行定位
設(shè)置相對(duì)定位的元素的 top、right、bottom 和 left 屬性將導(dǎo)致其偏離其正常位置進(jìn)行調(diào)整
不會(huì)對(duì)其余內(nèi)容進(jìn)行調(diào)整來適應(yīng)元素留下的任何空間
*/

div.relative {
	position: relative;
	left: 30px;
	border: 3px solid #73AD21;
}

/*
position: fixed; 的元素是相對(duì)于視口定位的,這意味著即使?jié)L動(dòng)頁面也始終位于同一位置
top、right、bottom 和 left 屬性用于定位此元素
固定定位的元素不會(huì)在頁面中通常應(yīng)放置的位置上留出空隙
*/

div.fixed {
	position: fixed;
	bottom: 0;
	right: 0;
	width: 300px;
	border: 3px solid #73AD21;
}

/*
position: absolute; 的元素相對(duì)于最近的定位祖先元素進(jìn)行定位(而不是相對(duì)于視口定位,如 fixed)
然而,如果絕對(duì)定位的元素沒有祖先,將使用文檔主體(body),并隨頁面滾動(dòng)一起移動(dòng)
“被定位的”元素是其位置除 static 以外的任何元素
*/

div.relative {
	position: relative;
	width: 400px;
	height: 200px;
	border: 3px solid #73AD21;
}

div.absolute {
	position: absolute;
	top: 80px;
	right: 0;
	width: 200px;
	height: 100px;
	border: 3px solid #73AD21;
}

/*
position: sticky; 的元素根據(jù)用戶的滾動(dòng)位置進(jìn)行定位
粘性元素根據(jù)滾動(dòng)位置在相對(duì)(relative)和固定(fixed)之間切換。起先它會(huì)被相對(duì)定位,直到在視口中遇到給定的偏移位置為止 - 然后將其“粘貼”在適當(dāng)?shù)奈恢茫ū热?position:fixed)
Safari 需要 -webkit- 前綴,舉例如下:
*/

div.sticky {
	position: -webkit-sticky; /* Safari的適配 加上為好 不影響其他瀏覽器的使用*/
	position: sticky;
	top: 0;
	background-color: green;
	border: 2px solid #4CAF50;
}

/*
重疊元素
在對(duì)元素進(jìn)行定位時(shí)可以與其他元素重疊
z-index 屬性指定元素的堆棧順序(哪個(gè)元素應(yīng)放置在其他元素的前面或后面)
元素可以設(shè)置正或負(fù)的堆疊順序
*/
img {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: -1;
}

/*
具有較高堆疊順序的元素始終位于具有較低堆疊順序的元素之前
如果兩個(gè)定位的元素重疊而未指定 z-index,則位于 HTML 代碼中最后的元素將顯示在頂部
*/
定位圖像文本
<!DOCTYPE html>
<html>
<head>
<style>
.container {
	position: relative;
}

.topleft {
	position: absolute;
	top: 8px;
	left: 16px;
	font-size: 18px;
}

img {
	width: 100%;
	height: auto;
	opacity: 0.3;
}

</style>
</head>

<body>
<div class="container">
	<img src="/i/logo/w3logo-2.png" alt="W3School" width="800" height="450">
	<div class="topleft">Top Left</div>
	<!-- 兩個(gè)定位的元素重疊而未指定z-index時(shí),html代碼中后面的元素顯示在上面 -->
</div>

</body>
</html>

參考更高級(jí)的更詳細(xì)的定位技巧文章來源地址http://www.zghlxwxcb.cn/news/detail-476030.html

到了這里,關(guān)于【CSS 08】display 控制布局 塊級(jí)元素 行內(nèi)元素 隱藏元素 結(jié)合JS 最大寬度 瀏覽器窗口 定位 position z-index 堆疊的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • CSS中如何隱藏元素但保留其占位空間(display:none vs visibility:hidden)?

    CSS中如何隱藏元素但保留其占位空間(display:none vs visibility:hidden)?

    前端入門之旅:探索Web開發(fā)的奇妙世界 記得點(diǎn)擊上方或者右側(cè)鏈接訂閱本專欄哦 幾何帶你啟航前端之旅 歡迎來到前端入門之旅!這個(gè)專欄是為那些對(duì)Web開發(fā)感興趣、剛剛踏入前端領(lǐng)域的朋友們量身打造的。無論你是完全的新手還是有一些基礎(chǔ)的開發(fā)者,這里都將為你提供一

    2024年02月11日
    瀏覽(16)
  • html5中 塊級(jí)元素與內(nèi)聯(lián)元素的解釋和設(shè)置 display

    a{display:block;} div{ ? ? ?display:inline; ?} 1、每一個(gè)元素都有默認(rèn)的display屬性值,比如div元素,它的默認(rèn)display屬性值為“block”,成為“塊級(jí)”元素(block-level);而span元素的默認(rèn)display屬性值為“inline”,稱為“行內(nèi)”元素。 2、塊級(jí)元素:占據(jù)一定矩形空間,可以通過設(shè)置高度、

    2024年02月08日
    瀏覽(16)
  • 前端小案例3:Flex彈性布局行內(nèi)元素寬度自適應(yīng)

    項(xiàng)目背景:需要在一行上展示空調(diào)設(shè)備的三個(gè)模式(制冷、制熱、通風(fēng))或者兩個(gè)模式(制冷、制熱);因?yàn)椴煌a(chǎn)品的模式數(shù)量不同,因此需要讓模式按鈕的寬度自適應(yīng),有兩個(gè)模式時(shí),單個(gè)模式寬度占據(jù)50%;三模式時(shí),寬度占據(jù)33.3%。 可以使用Grid和Flex 彈性布局實(shí)現(xiàn)。

    2024年02月04日
    瀏覽(31)
  • CSS基礎(chǔ):塊狀元素、內(nèi)聯(lián)元素、內(nèi)聯(lián)塊狀元素(行內(nèi)元素)

    CSS中,html中的標(biāo)簽元素大體被分為三種不同的類型:塊狀元素、內(nèi)聯(lián)元素(又叫行內(nèi)元素)和內(nèi)聯(lián)塊狀元素。 1.常用的塊狀元素有: 2.常用的內(nèi)聯(lián)元素有: 3.常用的內(nèi)聯(lián)塊狀元素有: 什么是塊級(jí)元素?在html中 就是塊級(jí)元素。設(shè)置display:block就是將元素顯示為塊級(jí)元素。如下代碼

    2023年04月12日
    瀏覽(23)
  • css系列--塊級(jí)元素靠右的實(shí)現(xiàn)方式

    問題描述: 實(shí)現(xiàn)某一行中內(nèi)部元素,靠右展示 HTML 如下: 想要塊級(jí)元素居右往往設(shè)置 margin-right: 0 屬性是行不通的 此方案不可行?。?方法1:使用 margin 屬性 方法2:使用 position 屬性 方法3:使用 float 屬性 方法4:使用 text-align 屬性 將塊設(shè)為行內(nèi)元素,然后父元素使用 text-al

    2024年02月11日
    瀏覽(17)
  • CSS 系列 -- 塊級(jí)元素靠右的實(shí)現(xiàn)方式

    HTML 如下: 想要塊級(jí)元素居右往往設(shè)置 margin-right: 0 屬性是行不通的 下面介紹五種方法,不同場景適用不同方法 使用 margin 屬性 將? margin-left ?設(shè)為? auto ?后, 元素左邊的? margin ?會(huì)被盡可能的撐大, 所以自然就把元素?cái)D到右邊去了 使用 position 屬性 使用 position 定位, 絕對(duì)能

    2023年04月13日
    瀏覽(16)
  • CSS必學(xué):元素之間的空白與行內(nèi)塊的幽靈空白問題

    CSS必學(xué):元素之間的空白與行內(nèi)塊的幽靈空白問題

    作者: WangMin 格言: 努力做好自己喜歡的每一件事 CSDN原創(chuàng)文章 博客地址 ?? WangMin 我們?cè)陂_發(fā)的過程中,難免會(huì)出現(xiàn)一些難以預(yù)料的問題。那么其中,CSS空白現(xiàn)象就是非常常見的問題之一。雖然它已經(jīng)被發(fā)現(xiàn)很久,但仍然有許多新手和經(jīng)驗(yàn)豐富的開發(fā)者們忽略了它對(duì)頁面布局

    2024年02月06日
    瀏覽(17)
  • 【CSS彈性盒模型 display:flex;常用參數(shù)及常見的布局】

    display:flex; 是CSS中用于創(chuàng)建彈性盒子布局的屬性,其常見的各種參數(shù)及用法包括: flex-direction 指定主軸的方向,可以是row(水平方向)、column(垂直方向)等。 justify-content 定義在主軸上的對(duì)齊方式,可以是flex-start(靠近起點(diǎn))、flex-end(靠近終點(diǎn))、center(居中對(duì)齊)、s

    2024年02月13日
    瀏覽(26)
  • CSS中display屬性的inline-block導(dǎo)致布局錯(cuò)位問題

    CSS中display屬性的inline-block導(dǎo)致布局錯(cuò)位問題

    HTML部分代碼 CSS代碼 不理想的效果 發(fā)現(xiàn)還原不回來現(xiàn)場 尷尬 大概樣式 發(fā)現(xiàn)核心問題是 inline-block 默認(rèn)的對(duì)齊方式 只需要設(shè)計(jì) 當(dāng)然也可以是使用浮動(dòng)float 或者 彈性盒子flex 完成上述需求 QQ瀏覽器 Firefox瀏覽器 設(shè)置行內(nèi)塊級(jí)元素之后,細(xì)心的人就會(huì)發(fā)現(xiàn)盒子間有空隙 檢查元素

    2024年02月15日
    瀏覽(21)
  • css面試題:css隱藏元素的方式

    特點(diǎn):父元素設(shè)置該屬性時(shí),子元素同樣會(huì)生效,但可以通過visibility:visible;修改子元素的顯示效果; 特點(diǎn):作用是從dom中移除節(jié)點(diǎn),所以子元素也會(huì)被移除掉, 該方法通過改變?cè)赝该鞫葋韺?shí)現(xiàn)隱藏,但需要注意父元素設(shè)置為opacity:0后,子元素會(huì)繼承父元素該屬性的效果,

    2024年02月13日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包