學習《HTML+CSS基礎課程》的筆記---第十五篇:CSS樣式設計小
- 水平居中設定-行內元素
如果被設定元素為文字、圖片等行內元素時,水平居中是透過給父元素(應該就是自己的元素)設定 text-align:center
來實現的。
如下程式碼:
html程式碼:
我想要在父容器中水平居中顯示。
css程式碼:
- 水平居中設定-定寬塊狀元素
定寬塊狀元素:塊狀元素的寬度width為固定值。滿足定寬和塊狀兩個條件的元素是可以透過設定“左右margin”值為“auto
”來實現居中的。我們來看個例子就是設定 div
這個塊狀元素水平居中:
html程式碼:
我是定寬塊狀元素,哈哈,我要水平居中顯示。
css程式碼:
也可以寫成:
margin-left:auto;
margin-right:auto;
注意:元素的“上下 margin” 是可以隨意設定的。
- 水平居中總結-不定寬塊狀元素方法(一)
不定寬塊狀元素:塊狀元素的寬度width不固定。不定寬度的塊狀元素有三種方法居中:
1.加入 table 標籤
利用table標籤的長度自適應性---即不定義其長度也不預設父元素body的長度(table其長度根據其內文字長度決定),因此可以看做一個定寬度塊元素,然後再利用定寬度塊狀居中的margin的方法,使其水平居中。
第一步:為需要設定的居中的元素外面加入一個 table 標籤 ( 包括 第二步:為這個 table 設定“左右 margin 居中”(這個和定寬塊狀元素的方法一樣)。 2.設定 display: inline 方法:與第一種類似,顯示型別設為 行內元素,進行不定寬元素的屬性設定 改變塊級元素的 display 為 inline 型別(設定為行內元素顯示),然後使用 html程式碼: css程式碼: 這種方法相比第一種方法的優勢是不用增加無語義標籤,但也存在著一些問題:它將塊狀元素的 display 型別改為 inline,變成了行內元素,所以少了一些功能,比如設定長度值。 3.設定 position:relative 和 left:50%:利用 相對定位 的方式,將元素向左偏移 50% ,即達到居中的目的 透過給父元素設定 float,然後給父元素設定 我們可以這樣理解:假想ul層的父層(即下面例子中的div層)中間有條平分線將ul層的父層(div層)平均分為兩份,ul層的css程式碼是將ul層的最左端與ul層的父層(div層)的平分線對齊;而li層的css程式碼則是將li層的平分線與ul層的最左端(也是div層的平分線)對齊,從而實現li層的居中。 程式碼如下: css程式碼: 這三種方法使用得都非常廣泛,各有優缺點,具體選用哪種方法,可以視具體情況而定。 我們在實際工作中也會遇到需要設定垂直居中的場景,比如好多報紙的文章標題在左右一側時,常常會設定為垂直居中,為了使用者體驗性好。 這裡我們又得分兩種情況:父元素高度確定的單行文字,以及父元素高度確定的多行文字。 父元素高度確定的單行文字的豎直居中的方法是透過設定父元素的 這種文字行高與塊高一致帶來了一個弊端:當文字內容的長度大於塊的寬時,就有內容脫離了塊。 如下程式碼: css程式碼: 父元素高度確定的多行文字、圖片等的豎直居中的方法有兩種: 方法一:使用插入 table (包括tbody、tr、td)標籤,同時設定 css 中有一個用於豎直居中的屬性 html程式碼: 看我是否可以居中。 css程式碼: 因為 td 標籤預設情況下就預設設定了 這種方法相容性比較差,只是提供大家學習參考。在 chrome、firefox 及 IE8 以上的瀏覽器下可以設定塊級元素的 display 為 table-cell(設定為表格單元顯示),啟用 vertical-align 屬性,但注意 IE6、7 並不支援這個樣式, 相容性比較差。 html程式碼: 看我是否可以居中。 看我是否可以居中。 看我是否可以居中。 css程式碼: 這種方法的好處是不用新增多餘的無意義的標籤,但缺點也很明顯,它的相容性不是很好,不相容 IE6、7而且這樣修改display的block變成了table-cell,破壞了原有的塊狀元素的性質。 有一個有趣的現象就是當為元素(不論之前是什麼型別元素, 簡單來說,只要html程式碼中出現以上兩句之一,元素的display顯示型別就會自動變為以 如下面的程式碼,小夥伴們都知道 a 標籤是 行內元素 ,所以設定它的 width 是 沒有效果的,但是設定為 css程式碼、
、
)。
即在外面加上:
..........
..........
text-align:center
來實現居中效果。如下例子:
position:relative
和 left:50%
,子元素設定 position:relative
和 left: -50%
來實現水平居中。
height
和 line-height
高度一致來實現的。(height
: 該元素的高度,line-height
: 顧名思義,行高(行間距),指在文字中,行與行之間的 基線間的距離 )。line-height
與 font-size
的計算值之差,在 CSS 中成為“行間距”。分為兩半,分別加到一個文字行內容的頂部和底部。
vertical-align:middle
。vertical-align
,在父元素設定此樣式時,會對inline-block
型別的子元素都有用。下面看一下例子:
table td{height:500px;background:#ccc}
vertical-align
為 middle
,所以我們不需要顯式地設定了。
display:none
除外)設定以下 2 個句之一:
position : absolute
float : left
或 float:right
display:inline-block
(塊狀元素)的方式顯示,當然就可以設定元素的 width 和 height 了,且預設寬度不佔滿父元素。position:absolute
以後,就可以了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4692/viewspace-2798552/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 學習《HTML+CSS基礎課程》的筆記---第一篇:Html介紹HTMLCSS筆記
- HTML/CSS基礎課程筆記————CSS結束篇HTMLCSS筆記
- css樣式設定技巧學習筆記CSS筆記
- CSS 基礎學習筆記CSS筆記
- CSS基礎之層疊樣式筆記CSS筆記
- CSS學習筆記之字型樣式CSS筆記
- MySQL學習筆記【基礎篇】MySql筆記
- html+css複習筆記HTMLCSS筆記
- 四. 文字程式設計--Windows程式設計課程學習筆記程式設計Windows筆記
- css樣式選擇器學習筆記CSS筆記
- vue學習筆記【基礎篇一】Vue筆記
- lua課程學習筆記筆記
- CSS基礎——浮動(float)【學習筆記】CSS筆記
- CAD學習筆記基礎課【圖層】筆記
- 會計學課程筆記筆記
- Python基礎課程筆記5Python筆記
- PHP 第十五週函式學習筆記PHP函式筆記
- 零基礎學習Python__小甲魚第一課筆記與課後練習Python筆記
- 達內課程學習筆記筆記
- HTML+CSS筆記HTMLCSS筆記
- 《HTML+CSS基礎入門課程》上線“中國職業培訓線上”HTMLCSS
- angular學習筆記(九)-css類和樣式2Angular筆記CSS
- angular學習筆記(九)-css類和樣式1Angular筆記CSS
- angular學習筆記(九)-css類和樣式3Angular筆記CSS
- PHP學習筆記(1)–基礎知識篇PHP筆記
- UI設計課程筆記(三)UI筆記
- MySQL資料庫基礎學習筆記(整理自蘇勇老師的MySQL基礎課程視訊)MySql資料庫筆記
- Andrew ng 深度學習課程筆記深度學習筆記
- Vue學習計劃基礎筆記(六) – 元件基礎Vue筆記元件
- W3school的CSS筆記(基礎篇)CSS筆記
- html+CSS筆記(1)HTMLCSS筆記
- 類的基礎學習筆記筆記
- go 學習筆記之學習函數語言程式設計前不要忘了函式基礎Go筆記函數程式設計函式
- 0基礎如何學習Python課程?就業前景怎麼樣?Python就業
- 程式設計基礎·Java學習筆記·物件導向(下)程式設計Java筆記物件
- CSS 小結筆記之三種樣式表CSS筆記
- node基礎學習筆記筆記
- Web基礎學習筆記Web筆記