您好,登錄后才能下訂單哦!
這篇文章主要介紹CSS高級用法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
塊元素指的是占據(jù)全部可用寬度的元素,并且在其前后都會換行。
塊元素的例子:<h2>、<p>、<div>
可通過將左和右邊距設(shè)置為"auto",來對齊塊元素。
把左和右外邊距設(shè)置為auto,指的是均等地分配可用的外邊距。結(jié)果就是居中的元素:
。center{ margin-left:auto; margin-right:auto; width:70%; background-color:#b0e0e6; }
案例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <style> .center { margin: auto; width: 70%; background-color: #b0e0e6; } </style> <title>CSS 水平對齊</title> </head> <body> <div class="center"> <p>這是一個段落。這是一個段落。這是一個段落。這是一個段落。這是一個段落。</p> <p>這是一個段落。這是一個段落。這是一個段落。這是一個段落。這是一個段落。</p> </div> <p>提示:如果寬度是 100%,則對齊沒有效果</p> <p><b>注釋:</b>除非已經(jīng)聲明了 !DOCTYPE,否則使用 margin:auto 在 IE8 以及更早的版本中是無效的。</p> </body> </html>
對齊元素的方法之一是使用絕對定位
.right{ position:absolute; right:0px; width:300px; background-color:#b0e0e6; }
案例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <style> .right { position: absolute; right: 0px; width: 100px; background-color: #b0e0e6; } </style> <title>使用 position 屬性進行左和右對齊</title> </head> <body> <div class="right"> <p>這是一個段落。這是一個段落。這是一個段落。這是一個段落。這是一個段落。</p> <p>這是一個段落。這是一個段落。這是一個段落。這是一個段落。這是一個段落。</p> <p>.right { position:absolute; right:0px; width:300px; background-color:#b0e0e6; }</p> </div><hr> </body> </html>
當(dāng)像這樣對齊元素時,對<body>元素的外邊距和內(nèi)邊距進行預(yù)定義是一個好主意。這樣可以避免在不同瀏覽器中出現(xiàn)可見的差異。
body{ margin:0; padding:0; } .container{ position:relative; width:100%; } .right{ position:absolute; right:0px; width:300px; background-color:#b0e0e6; }
對齊元素的另一種方式是使用float屬性:
.right{ float:right; width:300px; background-color:#b0e0e6; }
CSS尺寸(Dimension)屬性允許你控制元素的高度和寬度。同樣,它允許你增加行間距。
屬性 | 描述 |
---|---|
height | 設(shè)置元素高度 |
line-height | 設(shè)置行高 |
max-height | 設(shè)置元素的最大行高 |
max-width | 設(shè)置元素的最大寬度 |
min-height | 設(shè)置元素的最小高度 |
min-width | 設(shè)置元素的最小寬度 |
width | 設(shè)置元素的寬度 |
可能的值:
值 | 描述 |
---|---|
auto | 默認,瀏覽器會自動計算出實際的高度。 |
length | 使用px、cm等單位定義高度。 |
% | 基于包含它的塊級對象的百分比高度。 |
inherit | 從父元素繼承height屬性值。 |
CSS分類屬性允許你控制如何顯示元素,設(shè)置圖像顯示于另一元素中的何處:
相對于其正常位置來定位元素;
使用絕對值來定位元素;
以及元素的可見度。
屬性 | 描述 |
---|---|
clear | 設(shè)置一個元素的側(cè)面是否允許其他的浮動元素。 |
cursor | 規(guī)定當(dāng)指向某元素之上時顯示的指針類型。 |
display | 設(shè)置是否及如何顯示元素。 |
float | 定義元素在哪個方向浮動。 |
position | 把元素放置到一個靜態(tài)的、相對的、絕對的或固定的位置中。 |
visibility | 設(shè)置元素是否可見 |
CSS display屬性
值 | 描述 |
---|---|
none | 此元素不會顯示。 |
block | 此元素將顯示為塊級元素,前后有換行符。 |
inline | 默認。此元素會被顯示為內(nèi)聯(lián)元素,前后無換行符。 |
inline-block | 行內(nèi)塊元素。 |
list-item | 此元素會作為列表顯示。 |
run-in | 此元素會根據(jù)上下文作為塊級元素或內(nèi)聯(lián)元素顯示。 |
compact | 該值由于很少用,在CSS2.1中已被刪除。 |
marker | 該值由于很少用,在CSS2.1中已被刪除。 |
table | 此元素會作為塊級表格來顯示(類似<table>),表格前后有換行符。 |
inline-table | 此元素會作為內(nèi)聯(lián)表格來顯示(類似<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>)。 |
inherit | 規(guī)定從父元素繼承display屬性的值。 |
注:
inline:默認。此元素會被顯示為內(nèi)聯(lián)元素,前后無換行符。
block:此元素將顯示為塊級元素,前后有換行符。
比如在一個項目列表中,每項都是超鏈接,正常是鼠標移動到文字上才激活超鏈接,如果你把li設(shè)置為塊級元素,那么鼠標移動到這個塊上也就是這個li的范圍就會激活超鏈接!
none:此元素不會被顯示。
案例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>CSS display 屬性</title> <style type="text/css"> p { display: inline } div { display: none } span { display: block } </style> </head> <body> <p>本例中的樣式表把段落元素設(shè)置為內(nèi)聯(lián)元素。</p> <p>而 div 元素不會顯示出來!</p> <div>div 元素的內(nèi)容不會顯示出來!</div> <span>本例中的樣式表把 span 元素設(shè)置為塊級元素。</span> <span>兩個 span 元素之間產(chǎn)生了一個換行行為。</span> </body> </html>
擁有易用的導(dǎo)航條對任何網(wǎng)站都很重要。
通過CSS,可以把乏味的HTML菜單轉(zhuǎn)換成漂亮的導(dǎo)航欄。
導(dǎo)航欄 = 連接列表。
導(dǎo)航欄需要標準的HTML作為基礎(chǔ)。
導(dǎo)航欄基本上是一個鏈接列表,因此使用<ul>和<li>元素是非常合適的。
案例1:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>導(dǎo)航欄基本上是一個鏈接列表</title> <style> ul.test { list-style-type: none; margin: 0; padding: 0; } </style> </head> <body> <ul> <li><a href="#home">Home</a></li> <li><a href="#news">News</a></li> <li><a href="#contact">Contact</a></li> <li><a href="#about">About</a></li> </ul> <ul class="test"> <li><a href="#home">Home</a></li> <li><a href="#news">News</a></li> <li><a href="#contact">Contact</a></li> <li><a href="#about">About</a></li> </ul> <p><b>注釋:</b>我們使用在測試鏈接中使用了 href="#"。在真實的網(wǎng)站中,應(yīng)該是真實的 URL。</p> </body> </html>
案例2:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>完整樣式的導(dǎo)航欄實例</title> <style> ul { list-style-type: none; margin: 0; padding: 0; } a:link, a:visited { display: block; font-weight: bold; color: #FFFFFF; background-color: #bebebe; width: 100px; text-align: center; padding: 4px; text-decoration: none; text-transform: uppercase; } a:hover, a:active { background-color: #cc0000; } </style> </head> <body> <ul> <li><a href="#home">Home</a></li> <li><a href="#news">News</a></li> <li><a href="#contact">Contact</a></li> <li><a href="#about">About</a></li> </ul> </body> </html>
案例3:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>完整樣式的導(dǎo)航欄實例</title> <style> ul { list-style-type: none; margin: 0; padding: 0; } a:link, a:visited { display: block; font-weight: bold; color: #FFFFFF; background-color: #bebebe; width: 100px; text-align: center; padding: 4px; text-decoration: none; text-transform: uppercase; } a:hover, a:active { background-color: #cc0000; } .向左浮動 { float: left; } </style> </head> <body> <ul> <li class="向左浮動"><a href="#home">Home</a></li> <li class="向左浮動"><a href="#news">News</a></li> <li class="向左浮動"><a href="#contact">Contact</a></li> <li class="向左浮動"><a href="#about">About</a></li> </ul> </body> </html>
從列表中去掉圓點和外邊距
ul{ list-style-type:none; /* 取消圓點 */ margin:0; /* 取消外邊距 */ padding:0; /* 取消內(nèi)邊距 */ }
垂直導(dǎo)航欄:如果要構(gòu)建垂直導(dǎo)航欄,只需要定義<a>元素的樣式
display:block 把鏈接顯示為塊元素,可使整個鏈接區(qū)域可點擊(不僅僅是文本)。
a{ display:block; width:60px; }
完整樣式的導(dǎo)航欄:見上面的案例2
水平導(dǎo)航欄:
有2種創(chuàng)建水平導(dǎo)航欄的方法:使用行內(nèi)顯示和浮動列表項。
li{ display:inline; /* 行內(nèi)顯示 */ }
li{ float:left; /* 向左浮動顯示列表項 */ } a{ display:block; /* 塊方式顯示導(dǎo)航欄 */ width:60px; /* 寬度固定為60px */ }
兩種方法都可以,但若需要鏈接擁有相同尺寸就只能使用浮動方法。
圖片庫:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>CSS 圖片庫</title> <style> div.img { margin: 3px; border: 1px solid #bebebe; height: auto; width: auto; float: left; text-align: center; } div.img img { display: inline; margin: 3px; border: 1px solid #bebebe; } div.img a:hover img { border: 1px solid #333333; } div.desc { text-align: center; font-weight: normal; width: 150px; font-size: 12px; margin: 10px 5px 10px 5px; } </style> </head> <body> <div class="img"> <a target="_blank" href="img/tulip_ballade.jpg" height=""> <img src="img/tulip_ballade_s.jpg" alt="Ballade" width="160" height="160"> </a> <div class="desc">春意盎然</div> </div> <div class="img"> <a target="_blank" href="img/tulip_flaming_club.jpg"> <img src="img/tulip_flaming_club_s.jpg" alt="Ballade" width="160" height="160"> </a> <div class="desc">繁花似錦</div> </div> <div class="img"> <a target="_blank" href="img/tulip_fringed_family.jpg"> <img src="img/tulip_fringed_family_s.jpg" alt="Ballade" width="160" height="160"> </a> <div class="desc">在此處添加對圖像的描述</div> </div> <div class="img"> <a target="_blank" href="img/tulip_peach_blossom.jpg"> <img src="img/tulip_peach_blossom_s.jpg" alt="Ballade" width="160" height="160"> </a> <div class="desc">在此處添加對圖像的描述</div> </div> </body> </html>
以上是“CSS高級用法有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。