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

資訊專欄INFORMATION COLUMN

如何用自己喜歡的 CSS 風格重置網站的樣式

shaonbean / 1937人閱讀

摘要:翻譯瘋狂的技術宅原文許多前端開發人員都在用為他們的網站設計樣式。一些人喜歡在中添加一些自己偏好的樣式,我也一樣。我認為這是令人難以置信和奇怪的。不同的瀏覽器為表單元素和按鈕設置了不同的邊框樣式。這種風格的問題是它的特異性低。

翻譯:瘋狂的技術宅
原文:https://medium.freecodecamp.o...

許多前端開發人員都在用 Normalize 為他們的網站設計樣式。一些人喜歡在 Normalize.css 中添加一些自己偏好的樣式,我也一樣。

在本文中,我會與你分享我自己的 CSS reset 項目(除了 Normalize.css 之外我還使用它們)。

我將 reset 項分為8類:

盒子大小

刪除邊距和填充

列表

表格和按鈕

圖像和嵌入視頻

表格

隱藏屬性

Noscript

調整盒子大小

box-sizing 屬性改變了 CSS 盒子模型的工作方式。它會改變計算 widthheightpaddingbordermargin 的方式。

box-sizing 的默認設置是 content-box。我更喜歡將其改為 border-box,因為這樣更容易設置 paddingwidth.。

有關 Box Sizing 的更多信息,你可能對“了解Box大小”感興趣。

html {
  box-sizing: border-box;
}
*,
*::before,
*::after {
  box-sizing: inherit;
}
刪除邊距和填充

瀏覽器對不同元素 marginpadding 的設置各不相同。當我不了解這些時,默認設置會讓我失望。但是我更喜歡通過自己編碼設置所有邊距和填充。

/* Reset margins and paddings on most elements */
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
p,
pre,
blockquote,
figure,
hr {
  margin: 0;
  padding: 0;
}
列表

我在很多情況下都使用無序列表,而且很多情況下都不需要 disc 樣式。在這里我將 list-style 設置為 none 。當我需要 disc 樣式時,會在特定的

    上手動設置它。

    /* Removes discs from ul */
    ul {
      list-style: none;
    }
    表單和按鈕

    瀏覽器不會繼承表單和按鈕的排版。他們將 font 設置為 400 11px system-ui。我認為這是令人難以置信和奇怪的。所以我總是要手動讓它們從祖先元素繼承樣式。

    input,
    textarea,
    select,
    button {
      color: inherit; 
      font: inherit; 
      letter-spacing: inherit; 
    }

    不同的瀏覽器為表單元素和按鈕設置了不同的邊框樣式。我很不喜歡這些默認樣式,寧愿將它們設置為 1px solid gray

    input,
    textarea,
    button {
      border: 1px solid gray; 
    }

    我對按鈕做了一些調整:

    將按鈕的 padding 設置為 0.75em1em ,因為這看起來更符合我經驗中的合理默認值。

    刪除了應用于按鈕的默認 border-radius

    強制背景顏色是透明的

    button {
      border-radius: 0; 
      padding: 0.75em 1em;
      background-color: transparent;
    }

    最后,我將 pointer-events: none 設置為按鈕內的元素。這主要用于 JavaScript 交互。

    (當用戶點擊按鈕中的某些內容時,他們點擊的內容是 event.target ,而不是按鈕。如果按鈕內有 HTML 元素,這種風格可以更輕松地處理 click 事件)。

    button * {
      pointer-events: none;
    }

    媒體元素包括 imgvideoobjectiframeembed。我傾向于讓這些元素符合其容器的寬度。

    I also set these elements to display: block because inline-block creates unwanted whitespace at the bottom of the element.
    我還將這些元素設置為 display: block ,因為 inline-block 在元素的底部創建了不需要的空格。

    embed,
    iframe,
    img,
    object,
    video {
      display: block;
      max-width: 100%;
    }
    表格

    我很少使用表格,但有時它們可??能很有用。這是我的默認樣式:

    table {
      table-layout: fixed;
      width: 100%;
    }

    當元素具有 hidden 屬性時,應該從視圖中隱藏它們。 Normalize.css 已經為我們做了這件事。

    [hidden] {
      display: none;
    }

    這種風格的問題是它的特異性低。

    我經常將 hidden 添加到用類設置的其他元素中。類的特異性高于屬性,并且 display: none 屬性不起作用。

    這就是為什么我選擇用 !important 提高[hidden]的特異性。

    [hidden] {
      display: none !important;
    }
    Noscript

    如果一個組件需要 JavaScript 才能工作,我會添加一個

    這樣為

    /* noscript styles */
    noscript {
      display: block;
      margin-bottom: 1em;
      margin-top: 1em;
    }
    總結

    很多人對我提到的這些樣式風格感興趣。這個鏈接是我在 Github 的 CSS Resets 倉庫(https://github.com/zellwk/css...)。

    本文首發微信公眾號:jingchengyideng 歡迎掃描二維碼關注公眾號,每天都給你推送新鮮的前端技術文章

    歡迎繼續閱讀本專欄其它高贊文章:

    12個令人驚嘆的CSS實驗項目

    世界頂級公司的前端面試都問些什么

    CSS Flexbox 可視化手冊

    過節很無聊?還是用 JavaScript 寫一個腦力小游戲吧!

    從設計者的角度看 React

    CSS粘性定位是怎樣工作的

    一步步教你用HTML5 SVG實現動畫效果

    程序員30歲前月薪達不到30K,該何去何從

    7個開放式的前端面試題

    React 教程:快速上手指南

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/116018.html

相關文章

  • [譯]148個資源讓你成為CSS專家

    摘要:層疊樣式表二修訂版這是對作出的官方說明。速查表兩份表來自一份關于基礎特性,一份關于布局。核心第一篇一份來自的基礎參考指南簡寫速查表簡寫形式參考書使用層疊樣式表基礎指南,包含使用的好處介紹個方法快速寫成高質量的寫出高效的一些提示。 迄今為止,我已經收集了100多個精通CSS的資源,它們能讓你更好地掌握CSS技巧,使你的布局設計脫穎而出。 CSS3 資源 20個學習CSS3的有用資源 C...

    impig33 評論0 收藏0
  • 7 個開放式 CSS 面試題及回答策略

    摘要:通過面試者的答案可以得知他都知道哪些開發語言。這個問題的答案能夠知道求職者有沒有可靠的資源,這些資源在未來開展項目時可能會派上用場。對這個問題的誠實回答可以幫助面試官為求職者提供合適的團隊。 翻譯:瘋狂的技術宅原文:https://www.indeed.com/hire/i... 不管你是面試官還是求職者,里面的思路都能讓你獲益匪淺。 你用 CSS 多久了? 解析: 這個問題可以讓面...

    AJie 評論0 收藏0
  • 按鈕樣式正確方式

    摘要:按鈕樣式的正確方式如果你正在建立一個網站或一個應用,你可能會用到按鈕,也許看起來像按鈕的鏈接。這是我們想要做的事情可應用于鏈接或按鈕的按鈕樣式我們希望有選擇地應用它,因為我們的頁面中會有其他鏈接和按鈕樣式。 按鈕樣式的正確方式 如果你正在建立一個網站或一個web應用,你可能會用到按鈕,也許看起來像按鈕的鏈接。不管怎樣,讓這些正常展示是很重要的。 在本教程中,我們將為和元素以及一個自定義...

    DataPipeline 評論0 收藏0
  • 學習何用CSS變量創建網頁響應布局 — css var()

    摘要:只是需要把要改變的屬性在重新重置一下,需要在媒體查詢中擁有自己的選擇器,但會招致額外的大量代碼,像下面這樣查看效果新方法下面讓我們來看如何使用變量來解決這個問題。 在創新的2018年已經過去,在2019年看看如何簡單做成響應性的網站 如果你未曾聽說過CSS變量,那么我告訴你,它就是CSS的一種新功能,可以讓你擁有在樣式表中使用變量的能力,這樣做時并不需要什么特別的設置呦。 從本質上講,...

    Yuanf 評論0 收藏0
  • 學習何用CSS變量創建網頁響應布局 — css var()

    摘要:只是需要把要改變的屬性在重新重置一下,需要在媒體查詢中擁有自己的選擇器,但會招致額外的大量代碼,像下面這樣查看效果新方法下面讓我們來看如何使用變量來解決這個問題。 在創新的2018年已經過去,在2019年看看如何簡單做成響應性的網站 如果你未曾聽說過CSS變量,那么我告訴你,它就是CSS的一種新功能,可以讓你擁有在樣式表中使用變量的能力,這樣做時并不需要什么特別的設置呦。 從本質上講,...

    jemygraw 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<