1. 塊級元素和行內(nèi)元素
塊級元素主要有
span, strong, em, br, img , input, label, select, textarea
行內(nèi)元素主要有
div , p , form, ul, li , ol, dl, form, address, fieldset, hr, menu, table
1)塊級元素獨占一行,行內(nèi)元素的長度就是內(nèi)容的長度。
2)塊級元素可以設(shè)置寬高,行內(nèi)元素不能設(shè)定寬和高
3)塊級元素可以包含行內(nèi)元素,但行內(nèi)元素不能包含塊級元素
4)行內(nèi)元素設(shè)置margin會失效,設(shè)置padding有效但不能撐開父級元素的高度
2. 什么是 CSS 繼承? 哪些屬性能繼承,哪些不能?
所謂的css繼承指的是被包在內(nèi)部的標簽將擁有外部標簽的樣式性質(zhì),它是一種機制,它允許樣式不僅可以應(yīng)用于某個特定的元素,還可以應(yīng)用于它的后代。在css中,繼承是一種非常自然的行為,但是繼承也有其局限性。有些屬性是不能繼承的。這沒有任何原因,只是因為規(guī)則就是這么設(shè)置的。
不可繼承的:
display、margin、border、padding、background、height、min-height、max- height、width、min-width、max-width、overflow、position、left、right、top、 bottom、z-index、float、clear、table-layout、vertical-align、page-break-after、 page-bread-before、unicode-bidi。
3. 如何讓塊級元素水平居中?如何讓行內(nèi)元素水平居中?
塊級元素居中:margin:0 auto
行內(nèi)元素水平居中:text-align:center
4.浮動
左邊浮動:float:left; ? ? 右邊浮動: ?float:right;?
float bug解決方法
1.給子元素都添加float:left;??????? 2.在父級添加 clearfix??
并且在css樣式里添加以下代碼:
clearfix::after{
? ? ? ? content: '';
? ? ? ? display: block;
? ? ? ? clear: both;
}
內(nèi)邊距 padding
padding???? padding-top ?? padding-right ?? padding-bottom ? ? padding-left
邊框 border
?根據(jù)四個方向 上 右 下 左,邊框顏色 border-color, 邊框粗細 border-width
外邊距 margin:
根據(jù)四個方向? 上? 右? 下? 左
margin???? margin-top??? margin-right???????? margin-bottom????????? margin-left
display:inline-block
特點:
1、將對象呈遞為內(nèi)聯(lián)對象,但是對象的內(nèi)容作為塊對象呈遞。旁邊的內(nèi)聯(lián)對象會被呈遞在同一行內(nèi),允許空格。
什么情況下使用?
使用inline-block:當你需要控制元素的垂直對齊跟水平排列時,使用inline-block??梢蕴幚韴D片列表,橫向?qū)Ш綑?/p>
使用浮動:當你需要讓元素環(huán)繞某一個元素時,或者需要支持舊版本ie,或者不想處理inline-block帶來的空白問題時,使用浮動。
5.畫一個三角形
