在上一篇我們提到學習HTML5要具備CSS的知識,在頁面設計的時候Html5知識頁面的佈局與結構,要實現一個很絢麗漂亮的介面就需要藉助CSS。下面我們先來回顧css2的基本用法,再來看看和CSS3的關係與差異。
1、css是什麼?
cascading stylesheet(級聯樣式表),為網頁提供表現形式。依照w3c規範,設計一個網頁,應該將網頁的資料與結構寫在html檔案裡,網頁的外觀寫在css檔案裡,而網頁的行為寫在.js檔案裡。這樣做的目的是將網頁的數據,外觀,行為分離,方便程式碼的維護。
2、css選擇器:
(1)標記選擇器(簡單選擇器)
(2)class選擇器
.s1{ 属性名:属性 }
還有一個有名字的class選擇器,如下:
div.s1{ font-size;120px; }
#d1{ font-size:italic; font-weight:900; })id選擇器
h1,h2,h3{ //用逗号隔开 <span style="white-space:pre"> </span>color:bllue; }(4)選擇器分組
#d2 p{ span style="white-space:pre"> </span>color:red; font-size:300; }(5)選擇器的派生
/* */CSS中的註解
<html> <!--display属性--> <head> <style> #d1{ width:200px; height:100px; background-color:red; color:white; font-size:40px; display:inline; <!--改为行内标记--> } #d2{ width:200px; height:100px; background-color:blue; color:white; font-size:40px; display:inline; <!--改为行内标记--> } </style> </head> <body> <div id="d1">hello1</div> <!--标记d2会另起一行显示--> <div id="d2">hello2</div> </body> </html>樣式的優先權:
.css檔案裡
內部樣式,將樣式寫在.html檔案裡
內聯樣式,將樣式寫在style=" "裡面
有三個值:
block 按塊標記的方式顯示該標記
inline 不顯示
(1)文本相关的属性 font-size:30px; //字体大小 font-style:normal(正常)/italic(斜体) font-weight:800; //100-900 (粗细) font-family:"宋体"; //字体 text-align:left/center/right; //文本水平对齐方式 line-height:30px; //行高 一般和容器的高值相同放在中间 cursor:pointer/wait; //光标的形状 (2)背景相关的属性 background-color:red; //背景颜色 background-color:#88eeff; //RGB格式颜色设置 background-color:rgb(100,100,100); //可以用这种格式输入十进制数的颜色值 background-image:url(images/t1.jpg); //背景图片 background-repeat:no-repeat/repeat-x/repeat-y; //平铺方式 background-position:30px 20px; //(水平和垂直)背景位置 background-attachment:scroll(默认)/fixed; //依附方式 也可以同时设置背景的多个特性: background:背景颜色 背景图片 平铺方式 依附方式 水平位置 垂直位置; (3)边框 border-left:1px solid red; border-right:2px dotted black; border-bottom: border-top: border:1px solid red; (4)定位 width:100px; height:200px; margin //外边距 margin-left:20px; margin-right:30px; margin-top:40px; margin-buttom:50px; 可以简化为:margin:top right bottom left; margin:40 30 50 20; padding //内边距 padding-left: padding-right: padding-top: padding-buttom: 可以简化为:padding:top right bottom left; 内边距会将父标记撑开 (5)浮动 取消标记独占一行的特性 float:left/right; //向左,向右浮动 clear:both; //清除浮动的影响 (6)其他 list-style-type:none;除掉列表选项的小圆点。 text-decoreation:underline; //给文本加下划线 (7)连接的伪样式 a:link{color:red} 没有访问时 a:visited{color:blue} 鼠标放上时 a:action{color:green} 鼠标点击时 a:hover{color:yellow} 鼠标离开时
(2)position屬性
有三個值: static:缺省值。瀏覽器會將標記以預設的方式擺放(左-右,上-下)。
absolute:相對父標記(所在的標記)偏移。
relative:先按照預設的方式擺放,然後再偏移。
常用屬性如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Language" content="utf-8" /> <meta name="robots" content="all" /> <meta name="author" content="Tencent-ISRD" /> <meta name="Copyright" content="Tencent" /> <title>Border-color</title> <style> div{ border: 8px solid #000; -moz-border-bottom-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc; -moz-border-top-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc; -moz-border-left-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc; -moz-border-right-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc; padding: 5px 5px 5px 15px; } </style> </head> <body> <div>在Firefox浏览器里能看到边框颜色渐变效果</div> </body> </html>
上面是我們以前學的css的基本總結,下面來看一下css3的特點,先打開css3參考手冊(下載地址:http://download.csdn.net /detail/lxq_xsyu/6784027)
先看看border-color設定邊框
相關屬性:border-top-color,border-right-color,border-bottom-color,border-left-color
<html> <head> <style type="text/css"> a{ display:block; height:40px; float:left; font-size:1.2em; padding-right:0.8em; background:url(images/headerRight.png) no-repeat scroll top right; } a span{ background:url(images/headerLeft.png) no-repeat; display:block; line-height:40px; padding-left:0.8em; } </style> </head> <body> <a href="#"><span>Box Title</span></a> </body> </html>
這個設定邊框只在火狐瀏覽器上支持,運行效果
可以從css3.0參考書冊中看到css3增加了很多樣式屬性,我們可以參考該手冊進行比css2更加絢麗的界面效果,如果配合js還可以實現頁面動畫製作。
下面我們再來看看給介面元素創建圓角效果
在css2中為了實現這種效果,我們需要製作兩張圖片。程式碼如下:
<html> <head> <style type="text/css"> a{ float:left; height:40px; line-height:40px; padding-left:0.8em; padding-right:0.8em; border-top-left-radius:8px; border-top-right-radius:8px; background-image:url(image/headerTiny.png); backgrount-repeat:repeat-x; } </style> </head> <body> <a href="#"><span>Box Title</span></a> </body> </html>上面的方法雖然解決了問題,但是增加了一個多餘的標籤,下面我們來看看用css3如何解決:rrreee
以上就是 小強的HTML5移動開發之路(4)— —CSS2和CSS3的內容,更多相關內容請關注PHP中文網(www.php.cn)!