首頁 >web前端 >H5教程 >小強的HTML5行動開發之路(4)-CSS2和CSS3

小強的HTML5行動開發之路(4)-CSS2和CSS3

黄舟
黄舟原創
2017-01-22 10:34:091416瀏覽

在上一篇我們提到學習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=" "裡面

發生衝突時:外部樣式CSS中的兩個關鍵屬性:

(1)display屬性



有三個值:
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>

這個設定邊框只在火狐瀏覽器上支持,運行效果

小強的HTML5行動開發之路(4)-CSS2和CSS3可以從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)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn