/* 溢位文字為省略號 */
p/* 溢位文字兩行之後為省略號 */
p/* 文字+數字的字串兩行之後為省略號 */
p
(1)相鄰塊元素垂直外邊距的合併當上下相鄰的兩個塊元素相遇時,如果上面的元素有下外邊距margin-bottom,下面的元素有上外邊距margin-top,則他們之間的垂直距離不是margin-bottom與margin-top之和,而是取兩者中的較大者。這種現象被稱為相鄰塊元素垂直外邊距的合併(也稱為外邊距塌陷)
(2)巢狀塊元素垂直外邊距的合併
對於兩個巢狀關係的塊元素,如果父元素沒有上內邊距及上邊框,則父元素的上外邊距會與子元素的上外邊距合併,合併後的外邊距為兩者中的較大者。即使父元素的上外邊距為0,也會發生合併
解決方案:
在父標籤設定上邊框border:1px solid black或設定上內邊距padding-top:1px或為父標籤設定overflow: hidden;
帶動畫和滑鼠覆蓋顯示盒子陰影:
效果展示:
(1)元素浮動之後會盡量向頁面的左邊或右邊漂浮,直到遇到父元素的邊框或者其他浮動元素
(2)如果浮動元素的上邊是乙個沒有浮動的塊元素,則浮動元素不會超過塊元素
(3)浮動的元素不會超過他上邊的兄弟元素,最多和他排一行
(4)浮動的元素不會遮蓋文字,文字會自動環繞在浮動元素周圍,所以我們可以用浮動來設定文字環繞效果
(5)當元素設定了浮動以後,就會完全脫離文件流,塊級元素脫離了文件流之後,高度和寬度都需要靠內容撐開
(6)開啟span浮動,內聯元素脫離文件流以後可以設定寬高
在文件流中,父元素的高度預設是靠子元素撐開的,也就是子元素有多高,父元素就有多高,當子元素設定浮動以後,子元素就會完全脫離文件流,此時就會導致子元素無法撐開父元素高度,就導致了父元素的高度塌陷,由於父元素的高度塌陷了,則父元素下邊的元素就會向上移動,導致頁面布局混亂。
根據w3c的標準,在頁面中的元素都有乙個隱含的屬性block formatting context 簡稱bfc,該屬性可以設定開啟或關閉,開啟了bfc的元素可以包含浮動的子元素(ie6不支援bfc屬性)。
解決父元素高度塌陷方法(也可以作為清除浮動的方法 面試題!!!):
1、 開啟bfc(塊級格式化上下文)
(1)設定元素浮動==> 不推薦,使用這種方式開啟,雖然可以撐開父元素,但是會導致父元素的寬度丟失,而且使用這種方式也會導致下邊的元素上移,導致頁面混亂
(2)設定元素為inline-block==> 父元素會丟失寬度
(3)將元素的overflow設定為乙個非visible的值==> 最推薦設定overflow: hidden
2、清除浮動:
(1)給浮動元素的後面新增空div,設定clear:both,例如:
優點:簡單且相容性好
缺點:容易造成結構混亂,不利於後期維護
(2)通過after偽元素清除浮動,設定clear:both
CSS 浮動,高度塌陷和BFC,清除浮動
通過浮動,可以使乙個元素向其父元素的左側或右側移動,使用 float 屬性來設定元素的浮動 可選值 注意 未設定浮動 設定浮動 浮動的特點 浮動元素會完全脫離文件流,不再佔據文件流中的位置 設定浮動以後元素會向父元素的左側或右側移動 浮動元素預設不會從父元素中移出 浮動元素向左或向右移動時,不會超過...
CSS 浮動高度塌陷問題及清浮動
出現原因 1.子元素浮動 2.父元素無浮動 3.父元素高度為自動 也就是沒有設定高度 lang en charset utf 8 name viewport content width device width,initial scale 1.0 indextitle html,body,ul,li...
css高度塌陷問題
首先什麼是高度塌陷?當我們需要給頁面設定自適應寬高的時候,在文件流中,父元素的高度預設的情況下是被子元素的高度撐開的,子元素的高度就是父元素的高度,當我們給子元素設定了浮動厚,子元素就會脫離文件流 當你第一次給父元素設定自適應的時候,又給子元素設定浮動元素的時候,你就會發現,父元素的高度沒有了,這就...