input 對偽元素(:before :after)的支持情況

来源:http://www.cnblogs.com/muge10/archive/2017/11/24/7891301.html
-Advertisement-
Play Games

最近做一個自定義視覺效果的Switch組件,用到了 input:radio 和 label,併在label里用偽元素 :before 模擬狀態的切換效果。 但是同事評審的時候說可以不用label,直接用input的微元素就可以實現。之前一直以為input這樣的自閉合元素沒有偽元素,做了個測試看一下到 ...


最近做一個自定義視覺效果的Switch組件,用到了 input:radio 和 label,併在label里用偽元素 :before 模擬狀態的切換效果。

但是同事評審的時候說可以不用label,直接用input的微元素就可以實現。之前一直以為input這樣的自閉合元素沒有偽元素,做了個測試看一下到底有沒有。

代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>input:before 測試</title>
    <style>
        input:before,
        input:after {
            content: '';
            display: block;
            width: 10px;
            height: 10px;
            outline: 1px solid red;
        }
        input:after {
            width: 15px;
            height: 5px;
            outline-color: blue;
        }
    </style>
</head>
<body>
    <div>button <input type="button"></div>
    <div>color <input type="color"></div>
    <div>date <input type="date"></div>
    <div>datetime-local <input type="datetime-local"></div>
    <div>email <input type="email"></div>
    <div>file <input type="file"></div>
    <div>hidden <input type="hidden"></div>
    <div>image <input type="image"></div>
    <div>month <input type="month"></div>
    <div>number <input type="number"></div>
    <div>passwork <input type="password"></div>
    <div>range <input type="range"></div>
    <div>reset <input type="reset"></div>
    <div>search <input type="search"></div>
    <div>submit <input type="submit"></div>
    <div>text <input type="text"></div>
    <div>tel <input type="tel"></div>
    <div>time <input type="time"></div>
    <div>number <input type="number"></div>
    <div>url <input type="url"></div>
    <div>week <input type="week"></div>
    <div>datetime <input type="datetime"></div>
    <div>checkbox <input type="checkbox"></div>
    <div>radio <input type="radio"></div>
</body>
</html>
input 偽元素支持情況

在 mac Chrome 里打開查看的效果如圖:

可以看出來有的input支持有的不支持。讓人比較詫異的是 input:button 居然不支持偽元素。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 閑來沒事,研究了一下多屏適配和響應式佈局的 CSS。 第一種寫法 第二種寫法 max-device-width 與 max-width 的區別 頁面示例 ...
  • 前言 上傳圖片是常見的需求,多使用input標簽。本文主要介紹 input標簽的樣式美化 和 實現圖片預覽。 用到的知識點有: 1、input標簽的使用 2、filelist對象 和 file對象 3、fileReader對象 樣式美化 原生的input標簽樣式單一,且在不同瀏覽器下的表現還不一致。 ...
  • 查看原文 ...
  • 查看原文 ...
  • 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>設計中文版式</title> 6 <style type="text/css"> 7 body{ /*頁面基本屬性*/ 8 backgrou ...
  • 【以下作品非原創,僅學慣用】 <style> html,body{ width: 100%;height: 100%;overflow: hidden; } </style></head><body> <canvas id="cav"></canvas> <script> var cav = doc ...
  • HTML 中的預留字元必須被替換為字元實體。 HTML 實體 在 HTML 中,某些字元是預留的。 在 HTML 中不能使用小於號(<)和大於號(>),這是因為瀏覽器會誤認為它們是標簽。 如果希望正確地顯示預留字元,我們必須在 HTML 源代碼中使用字元實體(character entities)。 ...
  • ECMAScript 6.0(簡稱 ES6)是 JavaScript 語言的下一代標準,它於2015 年 6 月正式發佈。ECMAScript 和 JavaScript 的關係是,前者是後者的規格,後者是前者的一種實現。ECMAScript實現還有Jscript和ActionScript。 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...