国产又猛又爽又黄视频|在线观看人成视频免费|少妇高潮太爽了在线视频|911国产免费无码专区|特黄做受又大又粗又长大片|欧美一级二级免费在线观看|日日夜人人澡人人澡人人看免|欧洲午夜精品一级毛片在线播放

在安卓手機(jī)中使用圓角時(shí)背景顏色撐破邊框解決方案

2015-10-23 15:16 欄目:技術(shù)開發(fā) 查看(11728)

在PC時(shí)代前端開發(fā)者們被IE瀏覽器搞的要崩潰了,還好現(xiàn)在越來越多的需求已經(jīng)放棄了對(duì)IE6的支持,有的甚至已經(jīng)拋棄了對(duì)IE7的支持,更有甚者已經(jīng)開始擁抱IE9+了。而讓大家的蛋疼的時(shí)代依然還是沒有過去,在移動(dòng)web開發(fā)中因?yàn)楦魇礁鳂拥臋C(jī)型也是搞得開發(fā)者蛋都疼了。

比如這里我們要說的這個(gè)問題,我相信很多人都遇到過,而且也曾經(jīng)背這個(gè)問題困擾過。那就是在在安卓手機(jī)瀏覽器中使用圓角時(shí)背景顏色撐破邊框的問題(當(dāng)然不是所有安卓機(jī)都會(huì)出現(xiàn)問題),我發(fā)現(xiàn)有一些比較大的項(xiàng)目也存在這個(gè)問題,比如Discuz默認(rèn)的手機(jī)觸屏版模版中。

ewr

如上圖就是在安卓手機(jī)中出現(xiàn)的問題,就我所知在華為、小米等品牌安卓機(jī)中都存在這個(gè)問題。DEMO代碼如下:

CSS代碼

div {
padding: 20%;
text-align: center;
}

a {
display: block;
height: 40px;
border: 1px #eee solid;
background: red;
color: #fff;
line-height: 40px;
border-radius: 10px;
text-decoration: none;
}

HTML代碼

?<div id='d'>
    <a href="#" id='a'>background-clip</a>
</div>

而這在Chrome等PC瀏覽器是正常的,比如下面就是在Chrome PC版的效果。

dsfd

出現(xiàn)這種情況基本滿足三個(gè)條件:使用了背景、有圓角(不設(shè)圓角顯然不出現(xiàn)這個(gè)問題)、有邊框。當(dāng)然如果說最不優(yōu)雅的方式就是把邊框去掉,但我們有時(shí)候需要一個(gè)邊框;那么總不能就因?yàn)檫@樣在這種場(chǎng)景下就不使用邊框了吧。

還有一種方式就是重定義background-clip的值,大家可以用JS分別檢測(cè)這個(gè)值會(huì)發(fā)現(xiàn)不管是Chrome還是安卓的默認(rèn)值都是border-box,而當(dāng)我們?cè)诎沧可习堰@個(gè)值重定義為padding-box或者conten-box(當(dāng)元素沒有padding或者padding區(qū)域不需要背景時(shí)使用這個(gè)值),就會(huì)發(fā)現(xiàn)安卓上的這個(gè)問題沒有了。

簡(jiǎn)而言之,就是把background-clip的值自定義為padding-box。

但這里不得不說,其實(shí)這里的問題值得我們進(jìn)一步思考。如果按我們的思維邏輯,就算是初始的值是border-box,邊框都已經(jīng)被圓角束縛了,為什么背景卻要跑到邊框以外去呢?這個(gè)問你大家可以進(jìn)步探索。

與我們的項(xiàng)目經(jīng)理聯(lián)系
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流

轉(zhuǎn)載請(qǐng)注明出處:在安卓手機(jī)中使用圓角時(shí)背景顏色撐破邊框解決方案 - 微構(gòu)網(wǎng)絡(luò)
分享: