随着网站的越来越普及,CSS3和HTML5必将成为网站前端发展的主流方向,特别是在移动端,高端浏览器给前端工程师们带来了无以言表的体验。
通俗的来讲,CSS3可以说是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多新的模块也被加入进来。这些模块包括:盒子模型、列表模块、超链接方式 、语言模块 、背景和边框 、文字特效 、多栏布局等。那么,今天我首先要在马海祥博客上跟大家分享的就是CSS3的Gradients(梯度渐变)。
首先我们先来看下新的梯度渐变语法,新的语法包含四个渐变函数:
linear-gradient()
radial-gradient()
repeating-linear-gradient()
repeating-radial-gradient()
这些函数名无需过多的解释,我之后会在马海祥博客上谈到更多关于循环渐变网页设计。
因为规范仍是初稿阶段,所以我们在这些渐变函数前加以-webkit-前缀。当以后规范不再是初稿阶段,我们将能够不加前缀而使用他们。
1、Linear Gradients(线性梯度渐变)
为元素盒模型填充线性渐变是最常用的。你只需要考虑渐变从哪个方向开始。据马海祥了解有两种方式可以去指定它。
第一种,你可以指定渐变从哪个方向或角落开始:
linear-gradient(left, white, black)
linear-gradient(top right, white, black)
你甚至可以省略第一个参数,他将默认为top并给出一个垂直渐变。
第二种,你可以指定渐变的角度:
linear-gradient(135deg, white, black)
角度按逆时针方向旋转,0度时为从左向右方向。
注意在所有这些情况下,渐变足够大以填满元素盒模型。
2、Radial Gradients(径向梯度渐变)
径向渐变更加复杂,在填充时有更多的选项。
马海祥觉得最简单的形式是以元素盒模型中心为渐变起始,向外填充至每个角落:
radial-gradient(white, black)
这相当于 radial-gradient(center, ellipse cover, white, black)。
第一个参数为可选,默认为 center ,也可以是一个点(就像 background-position ),他允许你将原点放置到其它地方:
radial-gradient(10% 30%, white, black)
原点位置后面的参数用来指定渐变的形状和大小,这是两种方式之一。
这种方式用一些关键词来描述形状(circle,ellipse)和大小(closest-side,closest-corner,farthest-side,farthest-corner,contain,cover)例如:
radial-gradient(30% 30%, closest-corner, white, black)
radial-gradient(30% 30%, circle closest-corner, white, black)
如果你愿意,你还可以分别指定径向渐变的水平与垂直结束半径:
radial-gradient(center, 5em 40px, white, black)
3、Repeating Gradients(重复梯度渐变)
循环渐变 repeating-linear-gradient()和repeating-radial-gradient()
拥有完全相同的简写语法,且整个渐变将被循环填充:
repeating-linear-gradient(left, red 10%, blue 30%)
这些停靠点将被循环用于调整他们首尾相连,这常常会导致颜色之间过渡强烈。
你可以避免循环末尾的颜色:
repeating-radial-gradient(top left, circle, red, blue 10%, red 20%)
4、Color Stops(色站)
为渐变指定颜色停靠点很容易;最简单的情况下,你只需要提供一个颜色列表:
linear-gradient(left, red, green, blue)
这样会使所有的颜色平均分布于渐变之上。web前端
如果你愿意,你还可以为个别颜色定位具体的停靠点,然后让浏览器分配其它剩余的:
linear-gradient(bottom left, red 20px, yellow, green, blue 90%)
那些渐变轴线可能是条对角线;那么百分比则相应对角线的长度。
颜色的停靠点相同会使颜色之间过渡强烈:
linear-gradient(top left, red, yellow, green 60%, purple 60%, blue)

本文討論了HTML< Progress>元素,其目的,樣式和與< meter>元素。主要重點是使用< progress>為了完成任務和LT;儀表>對於stati

本文討論了html< datalist>元素,通過提供自動完整建議,改善用戶體驗並減少錯誤來增強表格。Character計數:159

本文討論了HTML< meter>元素,用於在一個範圍內顯示標量或分數值及其在Web開發中的常見應用。它區分了< meter>從< progress>和前

本文討論了視口元標籤,這對於移動設備上的響應式Web設計至關重要。它解釋瞭如何正確使用確保最佳的內容縮放和用戶交互,而濫用可能會導致設計和可訪問性問題。

本文討論了使用HTML5表單驗證屬性,例如必需的,圖案,最小,最大和長度限制,以直接在瀏覽器中驗證用戶輸入。

本文解釋了HTML5< time>語義日期/時間表示的元素。 它強調了DateTime屬性對機器可讀性(ISO 8601格式)的重要性,並在人類可讀文本旁邊,增強Accessibilit

本文討論了< iframe>將外部內容嵌入網頁,其常見用途,安全風險以及諸如對象標籤和API等替代方案的目的。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境