最明顯的是ul標籤內外邊距問題,ul標籤在IE-7中,有個默認的外邊距,可是在IE8以上及其餘瀏覽器中有個默認的內邊距。javascript
解決辦法:*{margin:0;padding:0;}css
解決辦法:使用outline:none,清除默認樣式以後再統一設置html
hover
、active
樣式沒有效果解決方案:lvha的順序來寫html5
link:日常的狀態java
visited:被訪問過以後android
hover:鼠標放到連接上的時候web
active:連接被按下的時候瀏覽器
cursor:hand在safari 、 ff下不支持
解決辦法:統一用cursor:pointerapp
<div class="container"> <img src="1.jpg"/> <img src="2.jpg"/> <img src="3.jpg"/> </div>
解決方案:post
父元素上設置 font-size:0
解決方案:使用png8或參考https://blog.csdn.net/aftermeet/article/details/46734409
解決方案:_display: inline
浮動塊元素與未浮動塊元素處於同一行,有默認的3px間距
解決辦法:將未浮動元素也變爲浮動
解決方案:讓圖片變成塊級元素
解決方案:一、給父層設置zoom:1觸發layout。 二、給父層設置width
解決方案:
爲這個容器設置下列屬性之一
一、設置overflow:hidden;
二、設置line-height:1px;
三、設置zoom:0.08
寬高與w3c定義的不一致,以寬度爲例,它包含了內容塊寬度+padding寬度+border寬度
line-height
失效的問題當一個容器裏的文字與img、input、textarea、select、object等元素相連時,對這個容器設置的line-height數值就會失效
解決辦法:在其中一個非文字的對象的樣式中增長:
margin: (容器的line-height - 對象自己的高度)/2px 0;
vertical-align:middle;
解決方案:
min-height:200px; height:auto !important; height:200px;
該屬性通常用在垂直居中,可使用其它解決方案
只使用使用position:absolute來模擬的話會出現滾動閃爍,需進一步處理,完整方案
<html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div style="height:100px; width:100px; background:#CCC; overflow:hidden;"> <div style="height:300px; width:90px; background:#999; position:relative;"></div> </body> </html>
解決方案:將父標籤的position也設置成relative
a
內部img
元素默認的邊框img{ border:none;}
IE9
如下瀏覽器不能識別css opacity屬性
解決方案:使用ie的css透明度屬性
filter: alpha(opacity = 50); filter: progid:DXImageTransform.Microsoft.Alpha(style = 0, opacity = 50);
ie9
如下瀏覽器對 html5
新增標籤不識別的問題 解決方案:使用html5shiv.js
ie9
如下瀏覽器不支持 CSS3 Media Query
解決方案:使用respond.js
例如豎屏狀態下是14px,轉換爲橫屏時就變成了20px
解決方案:-webkit-text-size-adjust: 100%
解決方案:-webkit-overflow-scrolling:touch
解決方案:input{ -webkit-appearance:none;}
element{ -webkit-tap-highlight-color:rgba(255,255,255,0);}
解決方案:<body ontouchstart=''>
在移動端中,若是給元素設置一個像素的邊框的話,那麼在手機上看起來是會比一個像素粗。
解決方法:爲相應的元素指定一個絕對定位的僞元素,該僞元素寬高爲容器元素的1倍,寬高包含邊框(縮放後纔會跟容器元素同樣大,邊框也會同步縮放),同時需指定縮放的座標爲left top
解決方案: background-clip:padding-box;
部分webkit內核手機瀏覽器在使用transform:translate或transition屬性時,會出現閃爍現象
解決方案:
.css { -webkit-transform-style: preserve-3d; -webkit-backface-visibility: hidden; -webkit-perspective: 1000; }
IOS8如下input元素使用了fixed定位,獲取焦點彈出軟鍵盤後,再滾動頁面則該元素會隨頁面滾動
解決思路:把頁面上須要滾動的區域移到一個容器中,而後對容器使用overflow-y:scroll來滾動
<!-- 能夠滾動的區域 -->
<main>
<div class="content">
<!-- 內容在這裏... -->
</div>
</main>
.main {
/* main絕對定位,進行內部滾動 */
position: absolute;
top: 50px;
bottom: 34px;
/* 使之能夠滾動 */
overflow-y: scroll;
}
main .content {
height: 2000px;
}
移動端兼容性參考
另外一篇兼容性參考