本篇內(nèi)容介紹了“有哪些實(shí)用的前端開發(fā)技巧”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
成都創(chuàng)新互聯(lián)專注于扎魯特旗網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供扎魯特旗營銷型網(wǎng)站建設(shè),扎魯特旗網(wǎng)站制作、扎魯特旗網(wǎng)頁設(shè)計、扎魯特旗網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造扎魯特旗網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供扎魯特旗網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
1. 利用 CSS 穿透覆蓋默認(rèn)樣式
常見發(fā)生場景:假如我們需要通過 input,type="file"來上傳文件,而這個 input 的默認(rèn)樣式,可以說是非常地丑。所以我們希望通過一張圖片,與這個 input 大小一樣,位置一致地蓋在上面。這個時候,顯然,這個時候點(diǎn)擊圖片,input 是不會起作用的。就是因?yàn)?img 隔絕了 click 的穿透,而我們希望的是,這個 img 只是視覺上遮擋了 input 的樣式,但是點(diǎn)擊的時候還是點(diǎn)擊到 input。所以,只要讓 img 可穿透即可。
css 代碼如下:
img { pointer-events: none; }
2. 實(shí)現(xiàn)自定義原生 select 控件的樣式
由于 select 移動端原生樣式很丑,但是原生彈出效果是符合我們設(shè)計的原則。直接修改 select 的樣式的時候,一個奇怪的現(xiàn)象出現(xiàn)了,在 chrome 上調(diào)試的時候,自己定義的樣式起了作用,在 Android 手機(jī)上也起了作用,但是到了 ios 手機(jī)上就不行了,典型的不兼容問題,這個時候禁用原生的樣式即可。
css 代碼如下:
select { -webkit-appearance: none; }
3. 文本溢出處理
移動設(shè)備相對來說頁面較小,很多時候顯示的一些信息都需要省略部分。最常見的是單行標(biāo)題溢出省略,多行詳情介紹溢出省略?,F(xiàn)在都用框架開發(fā)了,這種建議需求建議形成一個基礎(chǔ)組件,方便快捷。
css 代碼如下:
//單行 .single { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } //多行 .more { display: -webkit-box !important; overflow: hidden; text-overflow: ellipsis; work-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 2; //指定行數(shù) }
4. 開啟彈性滾動
css 代碼如下:
body { overflow: scroll; -webkit-overflow-scrolling: touch; }
注意:Android 不支持原生的彈性滾動,但可以借助第三方庫 iScroll 來實(shí)現(xiàn)。
5. 一像素邊框設(shè)置
很多時候,想保持邊框的大小在任何設(shè)置上都是 1px,但是因?yàn)?1px 使用 2dp 渲染,也就是說會顯示為 2px 大小。所以,要采用 css3 縮放一下。
css 代碼如下:
.folder li { position: relative; padding: 5px; } .folder li + li:before { position: absolute; top: -1px; left: 0; content: " "; width: 100%; height: 1px; border-top: 1px solid #ccc; -webkit-transform: scaleY(0.5); }
6. 防止鼠標(biāo)選中事件
給元素添加了onslectstart="return false",就可以防止鼠標(biāo)選中事件。
7. 給動態(tài)添加的元素綁定事件
利用事件代理達(dá)到這個效果即可。如:
$(document).on("click", ".large", slide); //jq中的寫法 //第一個參數(shù)表示的是對應(yīng)事件,第二個是需要綁定事件的元素的id或class,第三個是綁定的對應(yīng)的事件函數(shù)名
8. 兼容 IE 瀏覽器的透明度處理
.ui { width: 100%; height: 100%; opacity: 0.4; filter: Alpha(opacity=40); //兼容IE瀏覽器的處理 }
9. 常用的全屏居中 JS 函數(shù)
//獲取元素 function getElement(ele) { return document.getElementById(ele); } //自動居中函數(shù) function autoCenter(el) { var bodyX = document.documentElement.offsetWidth || document.body.offsetWidth; var bodyY = document.documentElement.offsetHeight || document.body.offsetHeight; var elementX = el.offsetWidth; var elementY = el.offsetHeight; el.style.left = (bodyX - elementX) / 2 + "px"; el.style.top = (bodyY - elementY) / 2 + "px"; }
10. 常用的全屏居中 CSS 函數(shù)
body { height: 100vh; text-align: center; line-height: 100vh; }
11. 在輸入框輸入完內(nèi)容并按回車的時
12. chrome 調(diào)試快捷鍵
① ctrl+shift+f 全文查找
② ctrl+o 查找文件名
③ ctrl+shift+o 查找 js 函數(shù)名
“有哪些實(shí)用的前端開發(fā)技巧”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!