css實例制作.doc_第1頁
css實例制作.doc_第2頁
css實例制作.doc_第3頁
css實例制作.doc_第4頁
css實例制作.doc_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

從圖中可以看出整個頁面分為頭部區(qū)域、導(dǎo)航區(qū)域、主體部分和底部,其中主體部分又分為左右兩列,整個頁面居中顯示,看明白了這點,下邊的框架就好搭建了。整體框架結(jié)果圖如下:搭建框架此處顯示 id header 的內(nèi)容此處顯示 id nav 的內(nèi)容 此處顯示 id main 的內(nèi)容 此處顯示 id side 的內(nèi)容此處顯示 id footer 的內(nèi)容從上邊的效果圖分析得知,整個網(wǎng)頁是居中瀏覽器顯示的,按照這樣的寫法需要把以上的header、nav、maincontent、footer都 設(shè)置寬度并居中,這樣做起來很麻煩,所以再在這些標(biāo)簽外增加一下父標(biāo)簽,設(shè)置這個父標(biāo)簽寬度并居中后,是不是所有的標(biāo)簽都居中了呢。增加后的代碼如下:此處顯示 id header 的內(nèi)容此處顯示 id nav 的內(nèi)容 此處顯示 id main 的內(nèi)容 此處顯示 id side 的內(nèi)容此處顯示 id footer 的內(nèi)容html框架代碼寫完后,下邊就需要設(shè)置css樣式表了。先測量下效果圖的整體寬度,然后設(shè)置container也是這個寬度并居中。說起測量效果 圖寬度,方法有多種,可以直接查看圖片尺寸。如果測量其中某一塊的寬度,可以使用測量軟件,也可以在ps下測量。整體寬度為900px,main部的寬度為664px,side寬度為228px。把這三個基本的寬度測量后,下面就可以寫css代碼 了由于本實例是按照實際當(dāng)中應(yīng)用來做的,所以css樣式表就最好寫在單獨文件里了,不要再寫在文件內(nèi)部了,這樣可以利用代碼的重用性,減少很多勞動強 度。下面就新建一個css樣式表文件:創(chuàng)建后保存在css文件夾中并命名為 layout.css設(shè)置全局的樣式,而后寫每一塊單獨的樣式,全局樣式如下:body margin:0 auto; font-size:12px; font-family:Verdana; line-height:1.5;ul,dl,dd,h1,h2,h3,h4,h5,h6,form,p padding:0; margin:0;ul list-style:none;img border:0px;a color:#05a; text-decoration:none;a:hover color:#f00;全局的樣式定義完后,下面定義以上幾大塊的樣式,先設(shè)置下#containerr的樣式如下:#container width:900px; margin:0 auto;/*header*/#header height:70px; background:#CCFFCC; margin-bottom:8px;#nav height:30px; background:#CCFFCC; margin-bottom:8px;/*main*/#maincontent margin-bottom:8px;#main float:left; width:664px; height:500px; background:#FFFF99;#side float:right; width:228px; height:500px; background:#FFCC99;/*footer*/#footer height:70px; background:#CCFFCC;現(xiàn)在預(yù)覽一下:在IE6下#maincontent的底部外邊距并沒有生效,而在IE8下,#footer干脆跑到#maincontent的下邊 了,這又是怎么回事呢?這就是之前我們講的,如果一個容器內(nèi)的元素都浮動的話,那么它的高度將 不會去適應(yīng)內(nèi)部元素的高度。解決辦法是在#maincontent增加 overflow:autol; zoom:1;,這樣就可以讓它自動適應(yīng)內(nèi)部元素的高度了?,F(xiàn)在再預(yù)覽一下,是不是都正常了。為了更加保險,建議在header、nav、maincontent、footer之間增加如下一句代碼并設(shè)置css樣式如下,它的作用是清除浮動。.clearfloat clear:both;height:0;font-size: 1px;line-height: 0px;切割效果圖基本框架搭建完畢后,下一步就是要分析每一塊該怎么切圖了。切圖方法有多種,可以使用ps或fireworks自帶的切片工具,也可以用QQ的截屏或者創(chuàng)建新文件,把需要的部分復(fù)制過來保存都可以,關(guān)鍵看個人喜好了。用ps的切片工具的話,把需要切割的區(qū)域用切片工具切分,如果要設(shè)置圖片的名稱,請使用切片選擇工具,然后在切片上雙擊,會彈出如下窗口,填寫名字后確定即可切割完后,需要保存圖片了,選擇文件存儲為web和設(shè)備所用格式,在彈出的窗口中點擊選中切片,然后在右側(cè)可以設(shè)置當(dāng)前切片的圖片格式。這里有 個技巧,一般小型色彩單一的圖片,采用gif格式,照片類大型圖片采用jpg,這樣生成的圖片既能保證質(zhì)量,圖片體積又小,這樣可以把所有的圖片切出來,取名存儲以備后用。目前所切的圖片只是一部分,并沒有把整個頁面所需的圖片全都切割下來,比如導(dǎo)航部分所用背景圖片可以放到一張圖片上,下面就用新建文件,然后用QQ截屏,粘貼過去的方法來創(chuàng)建。分析一下上圖的導(dǎo)航部分:1、兩端的圓角;2、鼠標(biāo)劃過狀態(tài)和當(dāng)前欄目狀態(tài)寬度應(yīng)該隨著字?jǐn)?shù)的多少而改變;3、二級導(dǎo)航有鼠標(biāo)劃過時的狀態(tài)。分析完 之后,就需要把需要的圖片整合到一張圖片上了,整合的結(jié)果如下圖,這個根據(jù)自己的需要進行整合。其實完全可以把其它一些小圖標(biāo)都整合在一張,但那樣操作起 來比較麻煩,所以我們還是歸一下類,把相關(guān)的圖標(biāo)整合到一起。接下來整合側(cè)邊欄的背景圖片,分析發(fā)現(xiàn)側(cè)邊欄應(yīng)用同樣的樣式,只不過高度有所不同,而且是四角都是圓角,所以只用一個通用的就可以滿足所有側(cè)邊欄塊 的需求了。那么怎么制作這個通用的背景呢?從下圖我們發(fā)現(xiàn),標(biāo)題的高度都是一樣的,只不過是下邊的內(nèi)容高度不同而已,那么我們把下邊內(nèi)容的背景制作的足夠 長,超過可能出現(xiàn)的最大高度就可以滿足需求了。整合后的效果如上圖,如果你現(xiàn)在還不明白為什么要這么做,那么一會兒寫完樣式表你就明白了。下面把三個圖標(biāo)也給切出來,如下圖:這些完事后,還有聯(lián)系我們的圖片和修飾小圖標(biāo)了。聯(lián)系我們的圖片如下,這里的圖片和小圖標(biāo)要背景透明,這樣才不會遮蓋下面的背景。布局頁面頭部和導(dǎo)航有了上邊的基礎(chǔ),下面的任務(wù)就是要利用html和css制作完成一個完整的網(wǎng)頁了。先從頭部開始,前面我們已經(jīng)把整體框架給搭建好了,就像蓋 房子一樣,整體結(jié)構(gòu)已經(jīng)出來了,下面就需要填磚分割空間了。先分析下頭部:分為兩部分,一個是logo靠左側(cè)顯示,一個是搜索靠右側(cè)顯示,那么布局時插入 兩個div,一個向左浮動,一個向右浮動的方式來完成。另外還有很多種實現(xiàn)方法,比如logo用h1標(biāo)簽,搜索用span,或者把logo做為背景圖片也 是可以的,不管采用哪種方法,要根據(jù)頁面的需求選用一種最合理的方法。如果要在logo加上鏈接的話,那么就不能用背景圖片的方法了。此處顯示 id logo 的內(nèi)容此處顯示 id search 的內(nèi)容先在header里插入以上兩塊元素。然后分別插入相應(yīng)的內(nèi)容,在logo里插入我們事先切割好的logo圖片,在search里插入一個表單,一個文本框和一個按鈕,插入后如下:搜索產(chǎn)品接下來定義css吧,在ps里測量,頭部的高度是71px,logo距頂部18px,搜索產(chǎn)品距頂部30px,下面在css里把這些參數(shù)都給定義上,看顯示的效果和效果圖中的效果是不是一樣呢?#logo float:left; margin-top:18px;#search float:right; margin-top:30px;這兩項的位置已經(jīng)差不多了。預(yù)覽你會發(fā)現(xiàn),搜索框和按鈕跟效果圖中的不一樣,這是因為我們還沒對它設(shè)置樣式,接下來把文本框增加一個class為inp_srh樣式,按鈕增加btn_srh的樣式,然后定義這兩個樣式的屬性。#search float:right; height:24px; margin-top:30px; color:#444;.inp_srh width:140px; height:17px; padding-left:20px; background:url(./images/srh_bg.gif) 0 0 no-repeat; border:1px solid #cbcbcb;.btn_srh width:58px; height:23px; background:url(./images/btn_srh.gif) 0 0 no-repeat; border:none; cursor:pointer; text-indent:-999em;#search * vertical-align:middle;我們給search增加了高度和文字顏色,這點不用多解釋,但高度為什么是24px,是為了照顧 IE6,大家去掉測試下就知道了;inp_srh的寬度和高度并不是實際效果圖中的寬高,是因為默認(rèn)情況下文本框帶有內(nèi)邊距造成的。另外就是padding的值也會算到總寬度上的;btn_srh就是應(yīng)用背景圖像來實現(xiàn)的,說明一點這里的border的值為none指的是無邊框,cursor定義鼠標(biāo)樣式為手形,之前許多同學(xué) 用hand,但這個通不過w3c認(rèn)證。text-indent:-999em這個屬性許多同學(xué)可能不理解是干什么用的了,它的作用相當(dāng)于word中的首行 縮進,這里設(shè)置成-999,意思是向左側(cè)縮進-999em,這樣是不是就看不到文字啦,所以它的作用是將按鈕上的文字隱藏,當(dāng)然也可以在html代碼中插 入空格代替文字,但這樣做有點不太好,在不支持css的設(shè)備上查看時,用戶不知道這個按鈕是干什么的了。所以建議采用這種形式;有必要解釋下最后一行,它的特殊之處在樣式名和大括號之間加了一個*號,這里兼容所用的,屬于css hack部分內(nèi)容,是定義這些元素都垂直居中對齊。css hack本身就是無意思的東西,所以不做過多解釋,知道當(dāng)需要垂直居中對齊時就采用這種寫法就行了,但是一定不要濫用,這個屬性也是有缺陷的,當(dāng)有英文和 中文同時出現(xiàn)時,英文會靠上顯示的。這些設(shè)置完后,把最初搭建框架時設(shè)置的header的背景色和底部外邊距給去掉吧。#header height:71px;至此,頭部的樣式就完成了,下邊該制作導(dǎo)航了。分析一下,導(dǎo)航分為一級導(dǎo)航和二級導(dǎo)航,所以我需要在nav下再插入nav_main和nav_son兩個塊元素。首頁企業(yè)新聞企業(yè)簡介產(chǎn)品展廳企業(yè)歷史招商加盟網(wǎng)上下單聯(lián)系我們企業(yè)動態(tài)領(lǐng)導(dǎo)活動產(chǎn)品資訊通知公告先設(shè)置nav的高度及背景圖片樣式。#nav height:66px; background:url(./images/nav_bg.gif) 0 0 repeat-x; margin-bottom:8px;完了之后該一級菜單和二級菜單的樣式了.nav_main height:36px; overflow:hidden;.nav_main ul li float:left; font-size:14px; font-weight:bold; margin:5px 5px 0 5px;.nav_main ul li a float:left; display:block; height:26px; line-height:26px; color:#fff; padding-left:20px;.nav_main ul li a span display:block; padding-right:20px;.nav_main ul li a:hover background:url(./images/nav_bg.gif) 0 -163px no-repeat;.nav_main ul li a:hover span background:url(./images/nav_bg.gif) right -163px no-repeat;.nav_main ul li a#nav_current height:31px; line-height:31px; background:url(./images/nav_bg.gif) 0 -132px no-repeat; color:#646464;.nav_main ul li a#nav_current span height:31px; background:url(./images/nav_bg.gif) right -132px no-repeat;.nav_son height:30px;.nav_son ul li float:left; margin-top:4px;.nav_son ul li a display:block; width:78px; height:22px; line-height:22px; text-align:center; color:#6e6e6e;.nav_son ul li a:hover background:url(./images/nav_bg.gif) 0 -198px no-repeat;看看效果怎么樣,是不是和 效果圖差不多了,但還有最后一步就是兩端的圓角沒實現(xiàn),實現(xiàn)圓角的方法也不復(fù)雜,只需再增加兩行代碼和兩個樣式即可。在nav下nav_main之前增加 如下兩行代碼:然后用樣式表定義一個左側(cè)的圓角,一個右側(cè)的圓角。css樣式如下:#nav_l float:left; height:66px; width:5px; overflow:hidden; background:url(./images/nav_bg.gif) 0 -66px no-repeat; margin-right:10px;#nav_r float:right; height:66px; width:5px; overflow:hidden; background:url(./images/nav_bg.gif) -5px -66px no-repeat;預(yù)覽一下吧,看看頭部和導(dǎo)航是不是和效果圖中的一樣呢布局頁面?zhèn)冗厵谥黧w部分涉及side和main兩部分,的內(nèi)容比較多,但都不難,主體部分先從側(cè)邊欄說起,講解如何切圖時已經(jīng)說過,側(cè)邊欄可以共用一個樣式,下面就先做一個通用的,插入如下html代碼產(chǎn)品導(dǎo)購此處顯示 class side_con 的內(nèi)容這里的標(biāo)題采用h2標(biāo)簽,沒必要再用個div,還有“產(chǎn)品導(dǎo)購”中“產(chǎn)品”二字是紅色字體,這里用strong標(biāo)簽,這樣可以省去很多沒必要的定 義,所以在頁面布局當(dāng)中一定要合理利用每一個標(biāo)簽。講到這里,有必要說一下第一節(jié)教程中講的為什么不能叫div+css而應(yīng)該叫xhtml+css了,因 為div只是xhtml中的一個標(biāo)簽,叫div+css會讓許多朋友誤認(rèn)為遇到塊級元素就得用div,造成了div的濫用,而合理利用每個標(biāo)簽,才是 web標(biāo)準(zhǔn)設(shè)計的一個準(zhǔn)則?;剡^頭來定義側(cè)邊欄的樣式如下:#side float:right; width:228px;.side_box margin-bottom:8px;.side_box h2 height:25px; padding:6px 10px 0 10px; background:url(./images/side_bg.gif) 0 0 no-repeat; font-size:14px; color:#444;.side_box h2 strong color:#f30;.side_con padding:10px; background:url(./images/side_bg.gif) 0 bottom no-repeat;預(yù)覽一下效果吧,是不是整體效果出來了,下邊就需要定義里邊各個部分了。先看下產(chǎn)品導(dǎo)購部分,內(nèi)容分為三部分,可以用ul、li列表的形式實現(xiàn),前邊的圖標(biāo)用背景圖片來實現(xiàn),可以在li上設(shè)置背景圖片,但這樣麻煩一點, 每個都需要設(shè)置,而且還得定位,有個更簡便的方法是定義ul的背景圖片,因為在切圖標(biāo)時,每個圖標(biāo)之間的間距是按照效果圖的間距來切的。產(chǎn)品導(dǎo)購語音業(yè)務(wù):普通電話 | 語音數(shù)字中繼語音業(yè)務(wù):普通電話 | 語音數(shù)字中繼語音業(yè)務(wù):普通電話 | 語音數(shù)字中繼細(xì)心的用戶已發(fā)現(xiàn),這里的class后跟了兩個樣式名稱,說明一個元素是可以定義多個樣式的,中間用空格分開。也可以把product樣式定義在ul上。說到可以定義多個樣式,強調(diào)一點:許多新手朋友常常大量使用,如一個塊元素需要設(shè)置邊框,綠色文字和灰色背景所以就在css里定義:.border border:1px solid #f60;.color color:#080;.bg background:#ccc;然后在塊元素上增加:此處顯示新 Div 標(biāo)簽的內(nèi)容其實這是一個非常不好的寫法,這樣表面看似達(dá)到了代碼重用性,但實際當(dāng)中,當(dāng)需要把其中一個元素的的邊框改為2px,怎么改?如果把.border 的邊框改了,那么所有應(yīng)用這一樣式的元素都改了。如果再在代碼中增加一個樣式,那么又得去改html代碼,和代碼和結(jié)構(gòu)分離的理念相違背了。一個好的代碼 布局,不管以后怎么改風(fēng)格,只用改樣式表,而不用去改html代碼,這才真正做到兩者分離了。扯遠(yuǎn)了,不過這點很重要,新手很容易犯這個毛病。回到剛才的問題上,給第三個li定義了一個product3樣式,然后在樣式表中定義它的底部邊框 為無,因為前邊定義li的底邊框為1px的虛線,而最后一個不需要,所以單獨定義個樣式把它取消掉,這里的product根據(jù)需要自己定義的名稱,一般用 能表達(dá)這塊內(nèi)容意思的簡潔英文來表示,或者用拼音。“產(chǎn)品導(dǎo)購”的樣式定義如下:.product padding:0px 10px;.product ul background:url(./images/icon2.gif) 5px 12px no-repeat;.product ul li height:58px; padding:14px 0 0 64px; border-bottom:1px dashed #dcdcdc; color:#777;.product ul li strong display:block; height:24px; color:#333;.product ul li a color:#777;.product ul li a:hover text-decoration:underline;.product ul duct3 border-bottom:none;“產(chǎn)品導(dǎo)購”完成后,下邊該“使用問答”了?!笆褂脝柎稹辈糠侄际且粏栆淮鸬男问?,問答各采用不同的圖標(biāo),而且問的文字加粗了。所以這部分采用dl、dt、dd的形式來完成。最新出的這個產(chǎn)品如何使用?該產(chǎn)品采用全新的技術(shù),較上一產(chǎn)品有質(zhì)的飛躍,功能上增強了許多,使用方法更加簡便.最新出的這個產(chǎn)品如何使用?該產(chǎn)品采用全新的技術(shù),較上一.最新出的這個產(chǎn)品如何使用?該產(chǎn)品采用全新的技術(shù),較上一產(chǎn)品有質(zhì)的飛躍,功能上增強了.最新出的這個產(chǎn)品如何使用?該產(chǎn)品采用全新的技術(shù),較上一產(chǎn)品有質(zhì)的飛躍,功能上增強.最新出的這個產(chǎn)品如何使用?該產(chǎn)品采用全新的技術(shù),較上一產(chǎn)品有質(zhì)的飛躍,功能上增強了許多,使用方法更加簡便.ask dl padding:10px 0; border-bottom:1px dashed #dcdcdc;.ask dl dt height:22px; overflow:hidden; font-weight:bold; background:url(./images/icon.gif) 0 -149px no-repeat; padding-left:20px;.ask dl dt a color:#666;.ask dl dd color:#666; background:url(./images/icon.gif) 0 -198px no-repeat; padding-left:20px;“使用問答”完成后,側(cè)邊欄就剩下“聯(lián)系我們”了,這個更簡單,直接插入圖片就行了,然后調(diào)整一下位置就可以了。聯(lián)系我們.contact padding:2px;布局頁面主體部分主體部分可以分三大部分,頂部是幻燈和熱點新聞,中間是圖片列表,下邊是左右兩塊,先來布局主體部分的頂部。頂部實際上還是個左右兩列布局,沒什么 復(fù)雜之處,就不再貼代碼了,本節(jié)結(jié)尾會提供實例的源代碼。講解一點:熱點新聞列表中的日期,是用一個span標(biāo)簽寫在了內(nèi)容的前邊,然后把span向右浮 動就實現(xiàn)了,“個人登錄”和“商戶登錄”的實現(xiàn)方法也是如此。之前許多同學(xué)問,像主頁的幻燈是怎么實現(xiàn)的?其實實很簡單,只要你動動手,就知道怎么做的了。但許多同學(xué)遇到個問題不去考慮靠自己能力能否 解決,而是上來就問,這是一個很不好的學(xué)習(xí)態(tài)度?先找找辦法,如果實在解決不了,再來問也不遲。方法是查看主頁源代碼,找到幻燈部分,你會發(fā)現(xiàn)有 如下一段js代碼,而且代碼中有幾個設(shè)置參數(shù)的地方,那么要想在自己網(wǎng)站實現(xiàn)這樣的功能,直接把這部分代碼插入到自己網(wǎng)站相應(yīng)位置,修改參數(shù)中的大小為自 己的大小、圖片地址為自己的圖片地址,還有就是下載swf文件,并改為相應(yīng)正確的地址。如果你有html基礎(chǔ)的話,這些一點都不難,還是那句話,一定要多 動手,多動腦。把如上一段代碼拷貝到本例的幻燈圖片位置,下載實現(xiàn)幻燈的swf文件到本地images文件夾下, 接下來修改/v3/images/indexpic.swf為images/indexpic.swf;修改swf_width和swf_height的 值為269和210;files的值為圖片路徑,links為圖片的鏈接地址,texts為標(biāo)題名稱,中間也是用|分隔,這樣就實現(xiàn)了幻燈圖片展示了。幻燈實現(xiàn)后,接下來該中間部分圖片列表了,同橫向圖文列表是一樣的。唯一區(qū)別就是多了一個標(biāo)題。在index_top下插入如下代碼:產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱產(chǎn)品名稱#index_pic border:1px solid #dbdbdb; margin-bottom:8px;#index_pic h2 height:28px; background:url(./images/box_tit_bg.gif) 0 0; border-bottom:1px solid #dbdbdb;#index_pic h2 span display:block; height:25px; background:url(./images/rmcp.gif) 12px 6px no-repeat;#index_pic ul padding:0 0 15px 0; overflow:auto; zoom:1;#index_pic ul li width:107px; float:left; margin:15px 0 0px 21px; display:inline; text-align:center;#index_pic ul li a dis

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論