1.居中
1.容器水平居中 margin:0 auto;
2.元素水平居中 text-align:center嚷往;
3.元素水平垂直居中
1)使用定位和需要定位的元素的margin減去寬高的一半
父盒子設(shè)置:position:relative
Div設(shè)置: width: 150px;height: 150px;position: absolute葛账;top: 50%;left: 50%皮仁; margin-top: -75px; margin-left: -75px;
2)使用CSS3的transform:不需要元素寬高籍琳,有css3兼容性
父盒子設(shè)置:position:relative
Div設(shè)置: position: absolute;top: 50%贷祈;left: 50%趋急;transform: translate(-50%,-50%)势誊;
2.解決HTML5/css3兼容性
<!--[if IE]>
<script src=”http://html5shiv.googlecode.com/svn/trunk/html5.js”></script>
< ![endif]-->
CSS3中-moz呜达、-ms、-webkit和-o分別代表什么意思
1粟耻、-webkit-:代表safari查近、chrome瀏覽器私有屬性
2蛛碌、-moz-:代表FireFox瀏覽器私有屬性
3瞻颂、-o-:代表opera瀏覽器私有屬性
4逊桦、-ms-:代表IE瀏覽器私有屬性
-webkit-transition:width 2s; /* Safari and Chrome */
-moz-transition:width 2s; /* Firefox 4 */
-o-transition:width 2s; /* Opera */
-ms-transition:width 2s; /*ie */
3粹舵、position幾個屬性的作用?
position的常見四個屬性值:relative戈泼, absolute婿禽, fixed, static大猛。
一般都要配合"left"扭倾、 "top"、 "right" 以及 "bottom"屬性使用挽绩。
1)Static:默認值膛壹,處于頁面流給予的位置(static 元素會忽略任何 top、bottom琼牧、left 或 right 聲明) 恢筝。
2)Relative:相對定位哀卫,可將其移至相對于其正常位置的地方巨坊,它偏移的top,right此改,bottom趾撵,left的值
都以它原的位置為基準偏移。注意relative移動后的元素在原來的位置仍占據(jù)空間共啃。
3)Absolute:絕對定位占调,可定位于相對于包含它的元素的指定坐標。意思就是如果它的父容器設(shè)置了
position屬性移剪,并且position的屬性值為absolute 或者relative究珊,那么就會依據(jù)父容器進行偏移。如果其父
容器沒有設(shè)置position屬性纵苛,那么偏移是以body為依據(jù)剿涮。注意設(shè)置absolute屬性的元素在標準流中不占
位置。
4)Fixed:位置被設(shè)置為 fixed 的元素攻人,可定位于相對于瀏覽器窗口的指定坐標取试。不論窗口滾動與否,
元素都會留在那個位置怀吻。它始終是以body為依據(jù)的瞬浓。 注意設(shè)置fixed屬性的元素在標準流中不占位置
4、px蓬坡,em猿棉,rem的區(qū)別磅叛?
1)px像素(Pixel),絕對單位萨赁。像素px是相對于顯示器屏幕分辨率而言的宪躯,是一個虛擬長度單位,是
計算機系統(tǒng)的數(shù)字化圖像長度單位位迂,如果px要換算成物理長度访雪,需要指定精度DPI。
2)em是相對長度單位掂林,相對于當前對象內(nèi)文本的字體尺寸臣缀。如當前對行內(nèi)文本的字體尺寸未被人為設(shè)
置,則相對于瀏覽器的默認字體尺寸泻帮。它會繼承父級元素的字體大小精置,因此并不是一個固定的值。
3)rem是CSS3新增的一個相對長度單位锣杂,使用rem為元素設(shè)定字體大小時脂倦,相對的是HTML根元素。
4)區(qū)別:IE無法調(diào)整那些使用px作為單位的字體大小元莫,em和rem可以縮放赖阻,rem相對的只是HTML根
元素。這個單位可謂集相對大小和絕對大小的優(yōu)點于一身踱蠢,通過它既可以做到只修改根元素就成比例地
調(diào)整所有字體大小火欧,又可以避免字體大小逐層復(fù)合的連鎖反應(yīng)。目前茎截,除了IE8及更早版本外苇侵,所有瀏覽器均已支持rem。
5企锌、有一個導(dǎo)航欄在chrome里面樣式完好榆浓?在IE里文字都聚到一起了,是哪個兼容性問題撕攒?
用了display:flex屬性陡鹃,在ie10以下都是無效的。
6打却、標簽上title與alt屬性的區(qū)別是什么?
Alt 當圖片不顯示時杉适,用文字代表。 Title 為該屬性提供信息柳击。
7猿推、描述cssreset的作用和用途?
Reset重置瀏覽器的css默認屬性,瀏覽器的品種不同蹬叭,樣式不同藕咏,然后重置,讓他們統(tǒng)一秽五。
8孽查、解釋csssprites,如何使用坦喘?
Css 精靈圖盲再,把一堆小的圖片整合到一張大的圖片(png)上,減輕服務(wù)器對圖片的請求數(shù)量瓣铣。
一定注意請求數(shù)據(jù)的坐標xy記得是負值
9答朋、清除浮動的幾種方式?
1. 父級div定義 height
原理:父級div手動定義height棠笑,就解決了父級div無法自動獲取到高度的問題梦碗。簡單、代碼少蓖救、容易掌
握洪规,但只適合高度固定的布局.
2. 結(jié)尾處加空div標簽 clear:both
原理:在浮動元素的后面添加一個空div兄弟元素,利用css提高的clear:both清除浮動循捺,讓父級div能自
動獲取到高度斩例,如果頁面浮動布局多,就要增加很多空div巨柒,讓人感覺很不好.
3. 父級div定義 overflow:hidden 超出盒子部分會被隱藏樱拴,不推薦使用.
4. 父級div定義偽類:after 和 zoom /*清除浮動代碼*/
.clearfix:after{
content:"";
display:block洋满;
visibility:hidden;
height:0珍坊;
line-height:0牺勾;
clear:both;
}
.clearfix{zoom:1}
原理:IE8以上和非 IE 瀏覽器才支持:after阵漏,原理和方法2有點類似驻民,zoom(IE 專有屬性)可解決 ie6,
ie7浮動問題履怯, 推薦使用回还,建議定義公共類,以減少 CSS代碼叹洲。
5.雙偽元素法:
.clearfix:before柠硕,.clearfix:after {
content: "";
display: block;
clear: both蝗柔;
}
.clearfix { zoom: 1闻葵;}