日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

聊一聊 CSS 的十個技巧和竅門

來源: 責編: 時間:2024-07-24 14:46:02 197觀看
導讀Web 開發人員使用 CSS 樣式語言為語義 HTML 文檔添加動態、富有創意且用戶友好的樣式。剛接觸 CSS 的 Web 開發人員通過練習基本的 CSS 選擇器語法、屬性、@ 規則和偽類/元素來開始學習樣式。了解這些 CSS 功能足以構

Web 開發人員使用 CSS 樣式語言為語義 HTML 文檔添加動態、富有創意且用戶友好的樣式。rKo28資訊網——每日最新資訊28at.com

rKo28資訊網——每日最新資訊28at.com

剛接觸 CSS 的 Web 開發人員通過練習基本的 CSS 選擇器語法、屬性、@ 規則和偽類/元素來開始學習樣式。rKo28資訊網——每日最新資訊28at.com

了解這些 CSS 功能足以構建一個易于訪問、美觀、用戶友好的現代網站,但要了解 CSS 的全部潛力,還有很多東西需要學習。rKo28資訊網——每日最新資訊28at.com

當 Web 開發人員廣泛使用 CSS 設計網站前端并嘗試使用 CSS 時,他們經常會發現新功能、解決方法和技術,這些功能、解決方法和技術可以幫助他們提高工作效率并提高 CSS 技能。rKo28資訊網——每日最新資訊28at.com

這些技巧和竅門可幫助每個人高效地實施快速、有吸引力的 CSS 純解決方案來解決設計問題,而無需編寫基于 JavaScript、SVG 和 HTML Canvas 的實現。例如,現在 Web 開發人員無需編寫一行 JavaScript 代碼即可創建快速、輕量級的倒計時器。rKo28資訊網——每日最新資訊28at.com

在本文中,我將介紹10個 CSS 技巧和竅門,幫助您充分利用 CSS,高效地構建現代 Web 界面,而無需使用 JavaScript、SVG、HTML Canvas 或集成繁重的第三方 UI 工具包和庫。練習這些技巧可以擴展您的 CSS 掌握能力!rKo28資訊網——每日最新資訊28at.com

1. 讓元素居中的最簡單方法

正確放置 UI 元素是設計高質量界面的必備條件。在大多數情況下,Web 開發人員必須將子元素垂直和水平居中。由于布局系統和定位功能不同,CSS 無法提供單一屬性來讓任何元素居中。rKo28資訊網——每日最新資訊28at.com

在響應式設計流行之前,Web 開發人員使用負邊距技巧來讓 HTML 元素居中——現在,您會發現使用各種現代和舊 CSS 屬性讓元素居中的無數方法,但在 CSS 中讓元素居中的最簡單方法是什么?rKo28資訊網——每日最新資訊28at.com

現代 CSS 網格功能支持使用 place-items 簡寫屬性讓網格塊居中,因此我們可以使用它來讓子元素居中,如下所示:rKo28資訊網——每日最新資訊28at.com

rKo28資訊網——每日最新資訊28at.com

您可以通過使用 calc() 和 mod() CSS 數學函數調整全局計時器變量的結束值來創建顯示分鐘、秒和毫秒的倒計時器。rKo28資訊網——每日最新資訊28at.com

4. 不使用 JavaScript 自定義原生表單控件

瀏覽器將 DOM 元素渲染為瀏覽器視口邊界內的可視 UI 元素。rKo28資訊網——每日最新資訊28at.com

但是,HTML 表單元素通常會打開在標準 DOM 視口之外渲染的原生 UI 元素,因此沒有跨瀏覽器的解決方案來自定義原生表單元素的平臺特定、瀏覽器特定的彈出元素。rKo28資訊網——每日最新資訊28at.com

例如,我們無法自定義 HTML 選擇元素的下拉彈出窗口,但我們可以使用 CSS 在所有瀏覽器中自定義選擇框的初始視圖,因為初始表單控件視圖在 DOM 內渲染:rKo28資訊網——每日最新資訊28at.com

<div>  <select>    <option>React</option>    <option>Angular</option>    <option>Svelte</option>    <option>Vue</option>    <option>Lit</option>  </select></div><style>  div {    position: relative;    min-width: 200px;  }  select {    appearance: none;    padding: 6px;    font-size: 14px;    border-radius: 4px;    width: 100%;    border: 2px solid #ccc;     outline: none;  }  select:focus { border: 2px solid #aaa; }  div::after {    border-right: 6px solid transparent;    border-top: 6px solid #333;    border-left: 6px solid transparent;    position: absolute;    top: 42%;    right: 12px;    content: "";    pointer-events: none;  }</style>

上述 CSS 定義通過添加自定義圖標和邊框來定制 HTML 選擇元素的初始視圖的瀏覽器特定外觀,如下面的預覽所示:rKo28資訊網——每日最新資訊28at.com

rKo28資訊網——每日最新資訊28at.com

使用相同的技術,您可以覆蓋用戶代理樣式表中的默認樣式,以自定義其他本機表單控件并向其添加額外的子元素,而無需使用 JavaScript 嵌入元素。rKo28資訊網——每日最新資訊28at.com

5. 使用漸變填充創建花式框角

眾所周知的 border-radius CSS 屬性可幫助我們為矩形 DOM 元素創建圓形或橢圓形邊緣。rKo28資訊網——每日最新資訊28at.com

此外,使用 clip-path 屬性,我們可以創建漂亮的花式角。您知道我們可以使用漸變填充創建創意花式角嗎?rKo28資訊網——每日最新資訊28at.com

通過為元素填充徑向漸變背景,可以創建一個完美、尖銳的圓圈。如果我們使生成的圓圈透明,將其用作蒙版,然后移動到角落,它會切開所有四個角,從而創建類似相框的角:rKo28資訊網——每日最新資訊28at.com

<div></div><style>  div {    width: 200px;    height: 100px;    background: darkcyan;    mask: radial-gradient(14px at 40px 40px, transparent 98%, black) -40px -40px;  }</style>

rKo28資訊網——每日最新資訊28at.com

CSS 滾動捕捉模塊提供了一組 CSS 屬性,用于提高可滾動容器的可用性和可訪問性。rKo28資訊網——每日最新資訊28at.com

例如,以下代碼片段會自動在主要部分停止滾動,并避免在部分部分停止:rKo28資訊網——每日最新資訊28at.com

<section style="background: #ccc">1</section><section style="background: #aaa">2</section><section style="background: #ccc">3</section><section style="background: #aaa">4</section><style>  section {    height: 100vh;    scroll-snap-align: start;    display: grid;    place-items: center;    font-size: 7em;  }  :root {    background-color: #eee;    scroll-snap-type: y mandatory;  }</style>

rKo28資訊網——每日最新資訊28at.com

CSS 滾動捕捉功能可幫助我們為移動應用中支持滑動的界面實現無 JavaScript、極簡的純 CSS 解決方案rKo28資訊網——每日最新資訊28at.com

10. 無類 CSS 樣式技術

每個 Web 開發人員都有使用類開始樣式的習慣。使用組織良好的類無疑是創建干凈、易于管理的網頁的良好做法。rKo28資訊網——每日最新資訊28at.com

但是,創建類對于創建極簡網頁來說并不是強制性的——無類 Web 設計概念激勵我們使用語義 HTML 標簽來編寫 CSS:rKo28資訊網——每日最新資訊28at.com

nav {}ul {}ul li {}summary {}

:not()、:has() 和 :is() 等功能選擇器(以偽類形式實現)可幫助我們避免在無類樣式表中選擇器中出現重復片段,從而編寫簡潔的代碼。rKo28資訊網——每日最新資訊28at.com

例如,以下代碼片段使用 :not() 為導航菜單項(最后一個除外)添加了顏色樣式:rKo28資訊網——每日最新資訊28at.com

<nav>  <ul>    <li>Home</li>    <li>Services</li>    <li>About</li>    <li>Contact</li>  </ul></nav><style>  nav ul {    display: flex;    list-style: none;    gap: 1em;    background: #eee;    padding: 1em;    :not(li:last-child) {      color: darkcyan;    }  }</style>

假設您需要為呈現 SVG 圖標的菜單項添加自定義樣式。然后,您可以使用 :has() 功能選擇器選擇這些菜單項,如下所示:rKo28資訊網——每日最新資訊28at.com

li:has(svg) {  /* ... */}

:has() 偽類可以與屬性選擇器和 CSS 變量結合使用,實現交互式主題更改:rKo28資訊網——每日最新資訊28at.com

<div>  <label><input type="radio" value="t1" name="t" checked>Theme 1</label>  <label><input type="radio" value="t2" name="t">Theme 2</label></div><style>  body {     background-color: var(--background-color);    color: var(--text-color);    transition: all 0.5s;  }  :root:has(input[value="t1"]:checked) {    --background-color: darkcyan;    --text-color: white;  }   :root:has(input[value="t2"]:checked) {    --background-color: skyblue;    --text-color: black;  }   </style>

:is() 功能選擇器幫助我們為逗號分隔的長選擇器編寫替代的簡寫選擇器:rKo28資訊網——每日最新資訊28at.com

/* old-fashioned */section h1, section h2, section h3, section h4, section h5, section h6 {  color: darkcyan;}/* modern */section :is(h1, h2, h3, h4, h5, h6) {  color: darkcyan;}

總結

以上就是我今天想與你分享的全部內容,希望這些技能可以幫助您編寫更簡潔、更高效的CSS代碼。rKo28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-103165-0.html聊一聊 CSS 的十個技巧和竅門

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Lodash 的又一方法被替代了,探索 JS 新特性 Object.groupBy

下一篇: 快速了解 CSS light-dark 函數及其應用

標簽:
  • 熱門焦點
  • 天貓精靈Sound Pro體驗:智能音箱沒有音質?來聽聽我的

    這幾年除了手機作為智能生活終端最主要的核心之外,第二個可以成為中心點的產品是什么?——是智能音箱。 手機在執行命令的時候有兩種操作方式,手和智能語音助手,而智能音箱只
  • 消息稱迪士尼要拍真人版《魔發奇緣》:女主可能也找黑人演員

    8月5日消息,迪士尼確實有點忙,忙著將不少動畫改成真人版,繼《美人魚》后,真人版《白雪公主》、《魔發奇緣》也在路上了。據外媒消息稱,迪士尼將打造真人版
  • Flowable工作流引擎的科普與實踐

    一.引言當我們在日常工作和業務中需要進行各種審批流程時,可能會面臨一系列技術和業務上的挑戰。手動處理這些審批流程可能會導致開發成本的增加以及業務復雜度的上升。在這
  • JVM優化:實戰OutOfMemoryError異常

    一、Java堆溢出堆內存中主要存放對象、數組等,只要不斷地創建這些對象,并且保證 GC Roots 到對象之間有可達路徑來避免垃 圾收集回收機制清除這些對象,當這些對象所占空間超過
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學弟,最近學習的怎么樣啊 了不起學弟:最近學習的還不錯,每天都在學習,每天都在進步! 了不起:那你最近學習的什么呢? 了不起學弟:最近在學習C
  • 破圈是B站頭上的緊箍咒

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之每年的暑期檔都少不了瞄準追劇女孩們的古偶劇集,2021年有優酷的《山河令》,2022年有愛奇藝的《蒼蘭訣》,今年卻輪到小破站抓住了追
  • 梁柱接棒兩年,騰訊音樂闖出新路子

    文丨田靜 出品丨牛刀財經(niudaocaijing)7月5日,企鵝FM發布官方公告稱由于業務調整,將于9月6日正式停止運營,這意味著騰訊音樂長音頻業務走向消亡。騰訊在長音頻領域還在摸索。為
  • 騰訊蓋樓,字節拆墻

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之&ldquo;想重溫暴刷深淵、30+技能搭配暴搓到爽的游戲體驗嗎?一起上晶核,即刻暴打!&rdquo;曾憑借直播騰訊旗下代理格斗游戲《DNF》一
  • iQOO Neo8系列或定檔5月23日:首發天璣9200+ 安卓跑分王者

    去年10月,iQOO推出了iQOO Neo7系列機型,不僅搭載了天璣9000+,而且是同價位唯一一款天璣9000+直屏旗艦,一經上市便受到了用戶的廣泛關注。在時隔半年后,
Top 主站蜘蛛池模板: 阳新县| 泽库县| 竹溪县| 永济市| 义马市| 韩城市| 陕西省| 白银市| 三原县| 五常市| 沿河| 阿坝县| 溧阳市| 绵阳市| 无极县| 西林县| 大化| 尤溪县| 红原县| 萨迦县| 民和| 务川| 惠水县| 兴业县| 江阴市| 弋阳县| 靖安县| 清丰县| 金溪县| 和静县| 拉孜县| 平陆县| 中江县| 房产| 理塘县| 柏乡县| 株洲市| 海兴县| 新兴县| 吉木萨尔县| 林州市|