上周天的時候有個學(xué)長找我?guī)兔ψ鋈龔堩撁妫驗(yàn)闆]有數(shù)據(jù)交換之類的,只是單純的前端頁面,想著好久沒做東西, 看書都看煩了,所以就接了也當(dāng)是練手。之前因?yàn)闆]有系統(tǒng)的看書,所以其實(shí)很多問題都考慮的不全面,屬于知其然不知其所以然的狀態(tài),雖然現(xiàn)在也還有很多要學(xué)的東西,但是知道自己的不足總比不知道強(qiáng)吧?而且這也算是一種進(jìn)步?總之,遇到各種問題,然后我發(fā)現(xiàn)問題主要分為兩類,一:我自己知識點(diǎn)不夠所以不知道怎么解決的,這種問題大多求問度娘或者問大神是可以搞定的;二:屬于確實(shí)是現(xiàn)階段技術(shù)存在漏洞的,不論是還沒能實(shí)現(xiàn)的、實(shí)現(xiàn)了但存在歧義或沖突的皆在此列。而就我這次做的頁面我遇到最大的問題就是瀏覽器兼容性的問題,有了解決方法的就在此和大家分享,希望能夠拋磚引玉,我也能學(xué)到更多的知識,謝謝。
正文:
1.遇到問題:當(dāng)前瀏覽器為ie7及以下版本
解決思路:用一個div覆蓋,讓用戶不能看到正常頁面呈現(xiàn)的內(nèi)容
實(shí)現(xiàn)方法:將正常是顯示內(nèi)容的div的display屬性設(shè)置為none,將覆蓋div的display屬性設(shè)置為block(PS:在其中可以加入瀏覽器下載鏈接,讓用戶盡快正常瀏覽頁面)
2.遇到問題:ie8中不能實(shí)現(xiàn)圓角,因?yàn)閕e8不能很好的支持css3
解決思路:下載PIE使得ie8支持css3中的圓角
實(shí)現(xiàn)方法:這里的實(shí)現(xiàn)方法就不細(xì)說了,下載然后“behavior: url(path/PIE.htc);”把路徑更改了就能夠訪問了,說一下需要注意的幾點(diǎn)問題:
(1)這個引用一定要放在html文件里面,而且路徑也是相對于引用的html文件而言的,放在css文件里面不會有效果
(2)如果發(fā)現(xiàn)引用成功之后,需要圓角的對象消失了,不要方,去洗個澡出來就好了,親測
開玩笑的,我確實(shí)去洗了個澡但是并沒有出現(xiàn),所以代碼出現(xiàn)BUG什么的,求神拜佛到底是沒用啊(攤手),從頭調(diào)了一遍,又去百度了一下,發(fā)現(xiàn)問題了,是因?yàn)閦-index的緣故,但只 設(shè)置一個z-index沒有效果,哦~原來它的position屬性不能是static即默認(rèn)值,ok,設(shè)置position為relative就ok啦,完美的圓角在ie8就實(shí)現(xiàn)啦~(在此我真誠的感謝寫出PIE的工程師 們確實(shí)是因?yàn)槟銈兊呐Σ抛屛胰绱溯p松的實(shí)現(xiàn)了我想要的效果,康桑阿米達(dá)~)
3.遇到問題:依然是ie8,不能支持css3中的@media screen and (....)實(shí)現(xiàn)響應(yīng)式布局
解決思路:沒辦法,誰讓它是磨人的小妖精呢?(聳肩)單獨(dú)寫一個js文件獲取屏幕寬度,然后再分別添加對應(yīng)樣式
實(shí)現(xiàn)方法:“
4.遇到問題:在ie11之前的版本,如果在標(biāo)簽中,則會出現(xiàn)奇怪的藍(lán)色邊框
實(shí)現(xiàn)方法:給加一個“border:0;”絕對立竿見影
5.遇到問題:因?yàn)槭乔芭_首頁,所以寫了圖片滾動,ie10以下圖片莫名出現(xiàn)多余空隙
實(shí)現(xiàn)方法:給加一句“display:block;”效果卓越
6.遇到問題:豎向顯示的文字用了“writing-mode:tb-rl;”但是在去朋友的電腦上調(diào)時發(fā)現(xiàn)居然在我心愛的FF上沒效果,不可能啊???然后發(fā)現(xiàn)是因?yàn)镕F4及以下版本沒有實(shí)現(xiàn)這個屬性,這個屬性最初是 由ie想出來的(老實(shí)說,我當(dāng)時有點(diǎn)意外呢,畢竟ie在我心中是個孤僻的天才,屬于自己搞點(diǎn)小發(fā)明但是都屬于破壞向的,所以居然這么好用的屬性是被ie想出來的,而且FF居然要到了后來才 實(shí)現(xiàn),不得不說對于我是挺意外的)
解決思路:沒法,有問題就得想辦法解決,那就只能一句一句的用ul li嵌套,然后向右浮動,設(shè)置定寬來實(shí)現(xiàn)了(老實(shí)說在用過writing-mode后這個方法很傻而且效果不好)
實(shí)現(xiàn)方法:思路說了,那就直接上代碼。
//html部分
//這里的
是為了讓標(biāo)點(diǎn)也能夠重起一行
//css部分
ul{ width: 6em;//em是一個相對單位,比px更好,1em = font-size的大小(如果沒有設(shè)置font-size則由繼承值決定) overflow: hidden;//保證布局不會崩掉 list-style: none;//把默認(rèn)樣式去除 } ul li{ float: right;//實(shí)現(xiàn)從右向左布局 width: 1em;//定寬保證只顯示一個字 margin-left: 0.2em;//保證每個li包含的內(nèi)容之間有一定的間隔,能夠看清楚 word-break:break-word;//告訴瀏覽器每個字后自動換行 }
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com