上週開始接觸移動web開發,默默的掉進了很多坑裡面。本文主要總結本週遇到的坑以及如何填坑。
1、px與rem換算。
設計稿的寬度一般是640px,而iphone是320px,所以測量設計稿的結果首先要除2,這時的單位還是px,下一步要轉換成rem,怎麼轉換呢?得看根節點怎麼設定的。
首先,任意瀏覽器的預設字型高都是16px,所有未經調整的瀏覽器都符合: 1em=16px;那麼10px=0.625em;於是為了便於計算,可以為body設定font-size=62.5%;到這裡,換算關係為10px=1rem。
綜上,設計稿的px,要除20變成rem,所以,我們設定乙個變數unit=20,在less裡面直接將設計稿的數值除以@unit即可。
但並不是所有的地方都需要轉換成rem,有些地方還是需要用px,比如某些不需要跟著裝置變化而變化的文字,在這些地方的邊距有的得用px,有的得用rem,還得多寫**才能如魚得水。
由於沒有按照上述方法做,於是我挑戰了自己的心算能力和耐性,哈哈哈……
2、1px線條在retina屏顯示2px;
知道原因之後,我們就來解決問題。要在手機上呈現1px,我們得寫0.5px,由於並不是所有的ios系統都支援0.5px,所以為了實現0.5px,我們可以把1px縮0.5倍,橫線就縱向縮scaley(0.5),豎線就橫向縮scalex(0.5)。
其次是關於線條的插入方式,為了不影響html結構,最好通過before或after的偽類來插入空內容,然後設定邊框1px,或寬高背景什麼的。
3、a鏈結按上去出現黑色背景;
這個問題一行**搞定:-webkit-tap-highlight-color:transparent;把它加到a的樣式上去。
4、html裡不要使用img標籤,都放到樣式裡面當背景。好處是可以二次壓縮。
移動開發還需積累經驗啊,第一次花了好多時間各種量設計稿各種改**各種找大神各種找資料,but,i enjoy it!
移動端填坑
1 0.5px邊框或者0.5px高度在安卓手機下不顯示問題 item gap 2 display inline block不僅左右會有無法測量的間距,上下也會有,會影響文字3 直接在外面加1px的淺顏色邊框時,視覺上和邊框之間會有一條白線 把乙個帶邊框的透明層放到上,這樣當時是乙個有留白的時候是可以...
移動Web開發(一)
1.web標準 降低開發複雜度,覆蓋的技術層面十分廣泛,技術標準化。以html為核心,擴充套件出幾個大類的技術標準 a.程式訪問 ecmascript es 3 es 5 es hamony web idl dom 2 3 offline file api device api performanc...
AI開發 DeepStream開發填坑記錄
下面是在deepstream使用過程中碰到的一些坑 1 pipeline中的sink如果需要編碼存檔案或者推rtmp的流,注意控制編碼的引數,編碼質量不要太高。否則可能sink帶不動,整個pipeline有資料積累,延時越來越高,程式占用的記憶體越來越大,最終crash。開發中碰到乙個問題 剛開始延...