国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS網頁設計教程:表單Button的Outline

2024-07-11 08:22:44
字體:
來源:轉載
供稿:網友
網頁制作文章簡介:CSS網頁設計教程:表單Button的Outline.

outline的使用,大家都喜歡在reset樣式表中直接重置:

* {

  outline: none;

}

Eric Meyers在他的CSS Reset是這樣重置的:

/* remember to define focus styles! */

:focus {

    outline: 0;

}

這些方法大家都可以說常見了。可是有一點可能大家還是不太清楚——outline在表單的button中使用時,在firefox瀏覽器下依然還是會有虛線框顯示的。正好今天有一位朋友也問起這個問題,于是查了一下相關資料,才得知在Firefox下是需要使用別的方法來處理的。那么今天這個教程就簡單的來了解如何處理這個問題。

問題描述:

前面也說了,很多設計師喜歡使用:

*{outline:none;}

或者

:focus {outline:none;}

來解決焦點粗虛線框的問題。但是你有沒有注意到,使用這種方法,對于button在Firefox下還是會有虛線框的,如下圖所示:


解決方法:

解決這個bug我們需要使用Mozilla的一個私有屬性:-moz-focuse-inner。不過這里有一點大家需要特別的注意:通過“-moz-focus-inner”并不是重置“outline”這個屬性的值,而是需要通過他來改變buttons的“border”樣式,具體的請看下面的代碼:

input::-moz-focus-inner,

button::-moz-focus-inner {

border: 0;

}

上面寫是包括了所有的input,但有時我們并不想這個值對“input[type=text]”有影響,那么我樣其實可以這樣來設置:

button::-moz-focus-inner,

input[type="reset"]::-moz-focus-inner,

input[type="button"]::-moz-focus-inner,

input[type="submit"]::-moz-focus-inner,

input[type="file"] > input[type="button"]::-moz-focus-inner {

border: none;

}

通過上面的代碼,那個難看的虛線框,我們就可以順利的移除這樣一來,我們其實對于button的outline設置需要這樣來設置,才能達到所有瀏覽器一樣的風格效果:

:focus {outline:none;} /*for IE*/

::-moz-focus-inner {border-color: transparent;} /*for mozilla*/

這樣表單button得到焦點,在各瀏覽器下的渲染效果就一致了。

上面是去除outline的邊框效果的寫法,但那樣或許不太好理解,那么你也可以像設置正常樣式那來理解,如下面的代碼所示:

button::-moz-focus-inner,

input[type="reset"]::-moz-focus-inner,

input[type="button"]::-moz-focus-inner,

input[type="submit"]::-moz-focus-inner,

input[type="file"] > input[type="button"]::-moz-focus-inner {

border: 1px dotted transparent;

}

button:focus::-moz-focus-inner,

input[type="reset"]:focus::-moz-focus-inner,

input[type="button"]:focus::-moz-focus-inner,

input[type="submit"]:focus::-moz-focus-inner,

input[type="file"] > input[type="button"]:focus::-moz-focus-inner {

padding: 3px;

border-color: #F3F3F3;

}

上面的使用可算是一個小技巧吧,可能知道的人也蠻多的,我也就不在多說這樣的問題,因為要我來說是怎么一回事,我也實在沒有那樣的水平來說清楚,但我只知道這樣的方法能解決問題。那么有關于“outline”的使用還是蠻多的,大家要是感興趣的話可以參考下面的擴展閱讀:

css - outlines Better CSS outline suppression a { outline: none; } outline Control Element Outline Position with outline-offset Remove Button Focus Outline Using CSS Removing The Dotted Outline Outline Outline CSS CSS Compatibility and Internet Explorer

希望上面的這段代碼大家用得上,如果你有更好的解決辦法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 六枝特区| 吴旗县| 壤塘县| 游戏| 桦川县| 精河县| 施甸县| 织金县| 冀州市| 乌拉特中旗| 阳泉市| 海门市| 新密市| 昭通市| 临沭县| 高邑县| 太保市| 永城市| 扶风县| 荆州市| 东海县| 黄平县| 吉林市| 荔波县| 临夏县| 潢川县| 江永县| 临潭县| 察雅县| 辛集市| 盘山县| 济阳县| 宁南县| 得荣县| 临江市| 清水河县| 沙田区| 通州市| 峡江县| 南漳县| 聂拉木县|