国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

CSS提高用戶體驗(yàn)的那些事

浠ラ箍 / 991人閱讀

1. 選擇合適的鼠標(biāo)光標(biāo)
在有一些觸摸屏上我們可能需要隱藏鼠標(biāo)的光標(biāo),比如說(shuō)播放器的屏幕上,這種情形下隱藏鼠標(biāo)光標(biāo)能帶來(lái)性能方面的提升。

使用cursor: none;可以達(dá)到隱藏鼠標(biāo)光標(biāo)的效果。

對(duì)于一些舊的瀏覽器可能不支持這些新的光標(biāo)關(guān)鍵字,可以通過(guò)使用老的方式,用一張1 * 1 的透明GIF圖片,然后這樣做:

video {
    cursor: url("transparent.gif");
}

最后我們生成隱藏鼠標(biāo)光標(biāo)的兼容各種情況的css代碼如下:

video {
    cursor: url("transparent.gif");
    cursor: none;
}
2. 擴(kuò)大按鈕的可點(diǎn)擊區(qū)域

可點(diǎn)擊區(qū)域向外擴(kuò)張往往也可以帶來(lái)可用性的提升。沒(méi)有人愿意對(duì)一個(gè)狹小的按鈕嘗
試點(diǎn)按很多次

比如把元素的熱區(qū)在四個(gè)方向上各向外擴(kuò)大10px,解決辦法:

(1)給button增加border,代碼如下:

button {
    padding: 20px;
    cursor: pointer;
    border: 10px solid transparent;
    background: #58a linear-gradient(#77a0bb, #58a);
    /* 
     * border會(huì)同時(shí)讓按鈕變大
     * 因?yàn)楸尘霸谀J(rèn)情況下會(huì)蔓延到邊框的下層
     * 使用 background-clip 屬性可以把背景限制在原本的區(qū)域內(nèi)
     */
    background-clip: padding-box;
}

效果如下:

這種解決方案并不是很好,邊框會(huì)影響布局,并且有的場(chǎng)景并不能使用邊框,另一種解決方案就是偽元素法,偽元素同樣可以代替其宿主元素來(lái)響應(yīng)鼠標(biāo)交互。

(2)偽元素法:原理就是偽元素在四個(gè)方向都設(shè)置成比宿主大10px,基于偽元素的方法很靈活,基本上可以把熱區(qū)設(shè)置為任何想要的尺寸、位置或形狀,甚至可以脫離元素原有的位代碼如下:

.button {
    position: relative;
    /*其他的樣式*/
}
.button::after {
    content: "";
    position: absolute;
    top: -10px;
    right: -10px;
    bottom: -10px;
    left: -10px;
}
3.自定義復(fù)選框的樣式

復(fù)選框和單選框這兩種控件在絕大多數(shù)瀏覽器中仍然是幾乎或完全無(wú)法設(shè)置樣式的,解決方法可以通過(guò)label元素來(lái)設(shè)置樣式,然后把真正的復(fù)選框隱藏起來(lái),代碼如下:

html部分


css部分

input[type="checkbox"] + label::before {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    margin-right: 4px;
    border-radius: 4px;
    background: silver;
    text-indent: 2px;
    line-height: 13px;
}

效果如下:

還可以設(shè)置各種狀態(tài)的樣式,checked、focus、disabled。

4.通過(guò)模糊弱化背景

將背景虛化來(lái)突出當(dāng)前的文本內(nèi)容

解決代碼如下:

html部分

這是背景

i am a dialog

css部分

.virtual-container {
  width: 1000px;
  height: 500px;
  position: relative;
}
.main {
  width: 100%;
  height: 100%;
  transition: .6s filter;
  background: #ccc;
  
}

.virtual-container:hover .main {
  filter: blur(2px) contrast(.8) brightness(.8);
} 

.virtual-container .alert {
    width: 200px;
    height: 200px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -100px;
    margin-top: -100px;
    background: #fff;
}

效果對(duì)比圖如下:

5.交互式的圖片對(duì)比控件

對(duì)比兩張圖片的排布方式是經(jīng)常出現(xiàn)的,為了突出圖片反應(yīng)的問(wèn)題
比如這種的圖片對(duì)比交互:

應(yīng)用了一點(diǎn)jQuery,實(shí)現(xiàn)的代碼如下:

html部分

css部分

.image-slider {
    position:relative;
    display: inline-block;
}
.image-slider > div {
    position: absolute;
    top: 0; bottom: 0; left: 0;
    width: 50%; /* 初始寬度 */
    overflow: hidden; /* 讓它可以裁切圖片 */
}
.image-slider img {
    display: block;
    user-select: none;
    width: 400px;
    height: 400px;
}
.image-slider input {
    position: absolute;
    left: 0;
    bottom: 10px;
    margin: 0;
    /*
     * 增加range的大小,提升用戶的體驗(yàn)
     * 先減小它的寬度,在用變形將它放大
     */
    width: 50%;
    transform: scale(2);
    transform-origin: left bottom;
}

js部分

var slider = $(".image-slider");
var div = document.createElement("div");
$(".before").wrap("
"); var range = document.createElement("input"); range.type = "range"; range.oninput = function() { $(".img-continer").width(this.value + "%"); }; slider.append(range);

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/111824.html

相關(guān)文章

  • 前端入坑指南

    摘要:作為自學(xué)兩年的初級(jí)前端,希望對(duì)那些想入門(mén)前端開(kāi)發(fā)的人分享一些觀點(diǎn)。尤其是這幾年前端領(lǐng)域飛速的發(fā)展,新東西層出不窮。或者關(guān)注下我的微信公眾號(hào)前端獲取每天分享前端入門(mén)知識(shí)。為什么選擇前端 做一件事之前最好問(wèn)問(wèn)自己為什么要做,然后再去思考該怎么做。如果只是看到別人做了,并且有很不錯(cuò)的收入,然后自己就決定做了,很可能中途放棄浪費(fèi)掉很多時(shí)間。起碼問(wèn)自己一個(gè)問(wèn)題:我是否真的熱愛(ài)這個(gè)領(lǐng)域,并且很樂(lè)意在這個(gè)...

    junnplus 評(píng)論0 收藏0
  • 關(guān)于CSS Reset 那些(四)之 構(gòu)架CSS基礎(chǔ)樣式庫(kù)

    摘要:現(xiàn)在回到我們這一章節(jié)的標(biāo)題,將它做下補(bǔ)充關(guān)于那些事四之基于構(gòu)架基礎(chǔ)樣式庫(kù)基礎(chǔ)庫(kù)構(gòu)思為什么要做基礎(chǔ)庫(kù)我上一章節(jié)的末尾拋出了幾個(gè)問(wèn)題假設(shè)你要做一個(gè)游戲單頁(yè)面,網(wǎng)頁(yè)上并不存在表單內(nèi)容,那么你就要移除一些冗余的代碼,開(kāi)始自定義樣式來(lái)滿足自己的需求。 前言 先來(lái)回顧一下前幾章節(jié),我們都說(shuō)了哪些內(nèi)容: CSS Reset 歷史 與 Normalize.css 介紹 Normalize.css...

    mj 評(píng)論0 收藏0
  • 關(guān)于CSS Reset 那些(四)之 構(gòu)架CSS基礎(chǔ)樣式庫(kù)

    摘要:現(xiàn)在回到我們這一章節(jié)的標(biāo)題,將它做下補(bǔ)充關(guān)于那些事四之基于構(gòu)架基礎(chǔ)樣式庫(kù)基礎(chǔ)庫(kù)構(gòu)思為什么要做基礎(chǔ)庫(kù)我上一章節(jié)的末尾拋出了幾個(gè)問(wèn)題假設(shè)你要做一個(gè)游戲單頁(yè)面,網(wǎng)頁(yè)上并不存在表單內(nèi)容,那么你就要移除一些冗余的代碼,開(kāi)始自定義樣式來(lái)滿足自己的需求。 前言 先來(lái)回顧一下前幾章節(jié),我們都說(shuō)了哪些內(nèi)容: CSS Reset 歷史 與 Normalize.css 介紹 Normalize.css...

    Yu_Huang 評(píng)論0 收藏0
  • CSS居中那些

    摘要:定寬塊狀元素滿足定寬和塊狀兩個(gè)條件的元素是可以通過(guò)設(shè)置左右值為來(lái)實(shí)現(xiàn)居中的。設(shè)置方法改變塊級(jí)元素的為類(lèi)型設(shè)置為行內(nèi)元素顯示,然后使用來(lái)實(shí)現(xiàn)居中效果。 做前端這一年多來(lái),其實(shí)一直都是偏向于js前后端,css什么的總是抱著夠用就好的心態(tài),從來(lái)沒(méi)有系統(tǒng)的學(xué)習(xí)或總結(jié)過(guò),結(jié)果現(xiàn)在的水平也一直停留在夠用的階段。感覺(jué)作為一名合格的前端工程師,不能讓css成為自己的短板,于是簡(jiǎn)單的總結(jié)一下,高手繞路。...

    dingding199389 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

浠ラ箍

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<