CSS3新特性

来源:https://www.cnblogs.com/MaricoCheung/archive/2020/07/22/13362618.html
-Advertisement-
Play Games

“常說,要認識一個人①,大概瞭解一下背景,然後見面時打招呼講什麼語言規矩範禮②,她回應了,聲音很好聽,你會繼續選擇③用選擇什麼語氣對待?而且又怎麼漂亮,相信自己不會拒絕④的,來預先處理⑤好情緒,好讓彼此能有一個新的開始⑥,給生活一個甜美的謎底吧⑦”--晚安,EmilyChen! (一)CSS簡介 C ...


常說,要認識一個人①,大概瞭解一下背景,然後見面時打招呼講什麼語言規矩範禮②,她回應了,聲音很好聽,你會繼續選擇③用選擇什麼語氣對待?而且又怎麼漂亮,相信自己不會拒絕④的,來預先處理⑤好情緒,好讓彼此能有一個新的開始⑥,給生活一個甜美的謎底吧⑦”--晚安,EmilyChen!

(一)CSS簡介
CSS(Casadaing Style Sheet)層疊樣式表,她的使命是把結構和表現分離,讓HTML文件變小,提高載入速度,提升用戶體驗。

(二)語法及其規範

【1】語法

  • 外聯樣式表
  • 內部樣式表
  • 行內元素表<style="color:red;"

【2】規矩

  • 層疊性(樣式衝突即後來居上,“長江後浪推前浪,前浪死在沙灘上”)
  • 繼承性(子承父業,“龍生龍鳳生鳳,老鼠生的小孩會打洞”)
  • 優先順序(選擇器權重計算的數位之間沒有進位,比如“10個a趕上一個類”的說法不存在)
地位 身份
0 繼承、*
1 元素、偽元素
10 類、偽類、屬性
100 id
1000 style=""行內
無窮 !important

【3】規範
Ⅰ建議遵循以下順序:
佈局定位屬性:display / position / float / clear / visibility / overflow(建議 display 第一個寫,畢竟關係到模式)
自身屬性:width / height / margin / padding / border / background
文本屬性:color / font / text-decoration / text-align / vertical-align / white- space / break-word
其他屬性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient …

Ⅱ其他
CSS里的屬性值,單引號 ' '
類命名(banner廣告、拼音、敏感詞會被瀏覽器插件過濾,不利於SEO),單詞之間使用下劃線 _

(三)選擇器

家族 成員
單一 通配符 *{}
元素 a {}
屬性 input[type="text"] {}
.class {}
id #id {}
複合 後代 ol a
子代 ul>li
相鄰兄弟 h1+p
並集 div,img
偽類 常見:hover、:focus
結構偽類:first-child、nth-of-type
偽元素::before、::after

(四)常用佈局

【1】基本

三種
網格div
浮動float 清除浮動clear 父因數浮動而引起高度為0的塌陷,清除後可讓父迴流自動檢測高度
定位position 相對relative 不脫標,邊偏移後占原位置
絕對absolute 脫標,不占原位置,子絕父相
固定fixed 絕對定位的特殊,只以瀏覽器為父
  • float、absolute、fixed改變了display屬性
  • 清除浮動有三種clear:both、clearfix:after、overflow:hidden

【2】設計
豎列、聖杯、雙飛翼

(五)預處理器
less、scss、stylus、postcss

(六)CSS3新屬性

六個
圓角border-radius
轉換transform 2D位移 translate() 三個屬性均有x,y軸; 對行內標簽沒效果 ; 位移後不占位置
2D旋轉 rotate() 單位deg,度數為正則順時針; 轉換中心點transform-origin
2D縮放 scale() 以1為預設,數字為倍數; <1是縮小、>1放大 ;縮放後不占位置
3D同上 多了z軸, 近小遠大
3D左手定則 x軸:水平向右 x右是正值;
y軸:垂直向下 y下是正值;
z軸:垂直屏幕 往外是正值
transform:rotate3d(1,0,0,45deg) 就是沿著x軸旋轉 45deg
3D呈現transform-style transform-style: preserve-3d;
子元素開啟立體空間,代碼寫給父級,但是影響的是子盒子
動畫animation 動畫名 持續時間 運動曲線 何時開始 播放次數 是否反向 始或終狀態; 簡寫不含 animationplay-state
animation-play-state: puased; 暫停動畫,經常和滑鼠經過等其他配合使用
animation-direction : alternate 想要動畫走回來 ,而不是直接跳回來
過渡transition 過渡屬性 花費時間 運動曲線 何時開始; 屬性:寬度高度/背景顏色/內外邊距;過渡所有的屬性用all
花費時間: 0.5s
運動曲線: 預設 ease (可以省略)
誰做過渡給誰加
陰影shadow 水平位置 垂直位置 模糊距離 影子大小 顏色 box-shadow: 5px 5px 3px 4px rgba(0, 0, 0, .4);
應用於文本text-shadow、盒子box-shadow
漸變gradients
  • 因為主流瀏覽器暫時不支持C3部分特性,需要添加瀏覽器研發團隊的首碼
  • 如webkit、ms、moz、o,使用:-webkit-border-radius:15px;

(七)壓縮的CSS

區別
min.css minify把原css文件壓縮大小, 刪除不必要的空格、回車、製表符
常應用於運營生產階段
.css 註釋完整,文檔可讀性強
常應用於試驗開發階段

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

-Advertisement-
Play Games
更多相關文章
  • Postgresql的Extensions能夠延伸,更改和推進Postgres的行為。怎麼樣?通過hooking到底層的Postgres API hooks。開源的Citus資料庫水平擴展了Postgres,它本身就是一個PostgreSQL擴展,它允許Citus保持最新的Postgres版本,而不 ...
  • #1、cmd登錄mysql命令 #(1)需要回車輸入密碼 C:\Users\Administrator>mysql -h localhost -P3306 -u root -p Enter password: ******** #(2)註意-p和密碼之間沒有空格,-P代表埠 -p代表密碼 C:\U ...
  • 本文更新於2019-06-29,使用MySQL 5.7,操作系統為Deepin 15.4。 應用可使用PrepareStatement + Bind-Variable來防止SQL註入。 已知的非法符號有: ( ) < > [ ] /* */ -- # ; = ' + 空格 % ...
  • 最近總發現用戶表一些數據被刪了,找不到原因,後面通過創建觸發器來排查,當有操作x_yonghu表時,記錄下來插入日誌表中。 create or replace trigger trg_x_yonghu_log_aft_modify after update OF shouji, zigezhengh ...
  • #資料庫對應EFCore操作 #1,查某個id在某個集合被包含的數據 例如: 查 Id 在ids里的結合 //實現的sql是實體Id in ids,也就是ids跟Id 兩個集合的交集 var _ainfcfgs = await _ainfcfgServices.GetListAsync(x => i ...
  • 對於sql優化,除了索引之外,執行計劃和統計信息是無法繞開的一個話題,如果sql優化(所有的RDBMS)脫離了統計信息的話就少了一個為什麼的過程,味道就感覺少了一大半。剛接觸Postgresql,粗淺地學習總結一下Postgresql相關的統計信息。 postgresql 進程模型 開始之前,有必要 ...
  • 一、驗證表單 封裝一個函數用於驗證手機號 /** * @param {String}eleId * @param {Object}reg */ function checkInput(eleId,reg) { var ele = document.getElementById(eleId); ele ...
  • 1.屬性選擇器 通過HTML的屬性及屬性值來選擇元素,如<p att= "val" >文本內容</p>,class 即是<p>元素的屬性,val 則是 att 的屬性值 屬性選擇器的書寫格式:元素[屬性名稱 = "屬性值"] {color: red; },等號只是其中一種關係符號 屬性選擇器類型: ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...