999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于HTML5+CSS3的網頁布局

2022-07-05 21:36:19李小遐
電腦知識與技術 2022年14期

摘要:網站是常見的信息傳播平臺,是通過互聯網向人們發布信息和提供網絡服務的載體。網站是一組相關網頁的集合,除了文字、圖像、超鏈接等HTML元素外,網頁布局是網頁制作中的核心技術,隨著WEB前端開發技術的發展,網頁已經從以前普遍使用的表格布局方法過渡到如今的DIV和CSS布局思想,即使用CSS來控制DIV盒子的大小及其在頁面中的位置是制作網頁時的關鍵問題。

關鍵詞:Web前端;HTML5;CSS3;盒子模型;網頁布局

中圖分類號:TP393.09? ? ? 文獻標識碼:A

文章編號:1009-3044(2022)14-0049-02

1 網頁布局概念

網頁布局是指將網頁中的所有元素進行排版和定位。在設計與制作網頁時,合理的布局可以使頁面內容及結構清晰,元素疏密適當,色彩對比分明,讓用戶擁有良好的頁面瀏覽體驗。在CSS3中,使用盒子模型對元素定位,淘汰了傳統的采用表格布局的頁面排版方法。

2 CSS盒子模型

盒子模型是目前CSS3布局技術所使用的一種思維模型。在盒子模型中,所有的網頁元素都可以被看作一個盒子,它們在網頁中占據一定的空間,在盒子里面可以放置內容,這些盒子又相互影響,那么通過設置盒子內部的屬性和盒子間的位置關系,從而實現整個網頁的布局排版。盒子模型通常借助div標簽實現網頁布局和網頁結構。在CSS3中,一個獨立的盒子由content(內容)、padding(內邊距)、border(邊框)和margin(外邊距)組成[1]。元素內容(content)通常包含文字、圖像、聲音、影像、超鏈接、表格和表單等,這些元素都可以被處理成塊級元素(block),即被形象看作為一個個長方形的盒子(div),那么網頁元素的布局實質上就是如何在頁面中擺放、甚至是嵌套這些大大小小的盒子。使用盒子模型時需要關注盒子的尺寸大小,即盒子的寬度和高度。盒子的寬度除了考慮元素內容的寬度外,還要包含左右外邊距、左右內邊距以及左右邊框的像素,而盒子的高度也是除了元素內容的高度外,還要包含上下外邊距、上下內邊距以及上下邊框的像素。

3 網頁布局技術

3.1 標準流布局

網頁布局中最基本的布局是標準流或稱文檔流布局,它使用的是網頁元素默認的位置和顯示順序[2]。在HTML中一般使用塊元素(div)定義網頁布局,而由于塊元素是要獨立占一行或者多行,在沒有為網頁元素添加CSS定位或浮動等屬性的情況下,這些元素會自然地按照從上到下的順序依次顯示。標準流是默認的布局模式,適用于單列布局的子頁面。比如,針對圖1所示的頁面單列布局架構,實現時的HTML部分的源代碼如下。

在HTML代碼基礎上,CSS代碼需要給出每個div盒子里面id選擇器的width、height和background-color。通常情況下,頁面的整體布局大都采用標準流方式。

3.2 浮動式布局

浮動式網頁布局是網頁制作中常用的方法。浮動就是對網頁元素使用float屬性,屬性值為left或right,浮動后的元素則脫離文檔流,呈現出漂浮狀態,直到遇到父元素的包含框或是其他浮動元素攔截為止,可以實現良好的布局效果,從而使網頁的布局和結構更加豐富、自由、合理。浮動元素會影響標準流中的網頁元素,掌握浮動元素盒子模型的計算方法,根據不同的浮動方案靈活設計HTML結構,在CSS中采用浮動法的塊元素將重新設置寬度,否則將按照實際大小呈現在網頁上[3]。

浮動屬性被頻繁地應用在網頁設計中,除了常用于圖文排版的頁面外,更適用于兩列或多列布局的網頁。兩列布局其實與一列布局相似,只不過是頁面內容要分為左右兩欄。圖2給出了一種兩列布局示意圖,實現時HTML部分源代碼如下。

此處的CSS代碼除了需要給出每個id選擇器的width、height和background-color以外,還需要設置id選擇器#leftside和#rightside的浮動屬性,即#leftside{float:left;width:30%;}、#leftright{float:right;width:70%},以便讓原本處于標準流的兩個盒子浮動,并排顯示在同一行,呈現出兩欄的頁面劃分效果。

對于企事業單位的門戶網站,特別是電子商務之類的網站,因為頁面內容分類眾多,通常需要進行左中右等三欄布局的頁面效果,而浮動后的盒子都會脫離標準流,并排顯示在同一行,從而呈現出三欄的劃分效果。圖3給出了三列布局架構示意圖,實現時HTML部分源代碼如下。

與兩欄布局相似,此處的CSS代碼除了需要給出每個id選擇器的width、height和background以外,還需要設置id選擇器#leftside(左邊欄)、#main(主欄)和#rightside(右邊欄)的浮動屬性,即#leftside{float:left;width:30%;}、#main{float:left;width:70%;}#leftright{float:left;width:30%}。

浮動是一種比較便利的布局實現方式,無須額外的元素輔助定位,同時兼容性也比較優秀,但存在一定的局限性,無法精確定位元素的位置,因此通常用于實現左右兩列寬度固定、中間自適應這種三列布局。采用浮動時需要注意對普通標準流中元素的影響,必要時需要清除(clear)浮動[4]。

3.3 定位式布局

CSS的定位布局可以精確擺放盒子的位置,從而完成比較復雜的網頁布局效果。根據定位屬性position的屬性值來確定具體的定位模式,position的屬性值有多個,其中較為常用的是固定定位(fixed)、絕對定位(absolute)和相對定位(relative)三種[3]。

固定定位是相對于瀏覽器窗口進行的定位的。當元素設置為固定定位(position:fixed)時,會脫離原文檔流進行定位,原有的位置會被其他元素占據,而且無論瀏覽器窗口如何改變,瀏覽器滾動條如何拖動,固定定位的元素都將顯示在瀏覽器的固定位置,準確位置由左偏移(left)和右偏移(right)設置水平方向,上偏移(top)和下偏移(bottom)設置垂直方向。

采用絕對定位時,首先要找到絕對定位的父元素即參考對象,父元素必須擁有定位屬性,如果父元素需要保留在標準流中的位置,一般應設置為relative,當然也需要精確的坐標值。

當頁面中元素按照標準流布局,需要對位置進行調整而保留原來的位置時,可以采用相對定位。使用相對定位時,參考點是元素本身在標準流中的位置,坐標值的設置原理與其他定位方式相同?;诙ㄎ环绞降奶匦?,一般不會單獨采用相對定位方式,通常需要結合絕對定位使用,也就是把相對定位的元素作為絕對定位的父元素,這樣可以保證子元素與其父元素之間的位置不發生變化[5]。圖4給出了一種定位布局示意圖,實現時HTML部分源代碼如下。

此處,父容器# wrapper設置為相對定位,# wrapper{position: relative; },兩個子元素h2和#face分別設置為絕對定位,h2{position:absolute;left:150px;bottom: 10px; },#face{position: absolute;left:30px;bottom:-30px; },如此定位布局后,無論父容器# wrapper如何變動頁面位置,h2和#face相對于# wrapper的位置不會受影響。

當然,對結構比較復雜的頁面,甚至可以采用標準流、浮動式和定位方式相結合的綜合布局模式。圖5給出了浮動、相對定位和絕對定位互相搭配的一種布局示意圖,實現時HTML部分源代碼如下。

此處,父容器# contrainer設置為相對定位,# contrainer { position: relative; width: 260px;height: 80px; background-color: #aaa; },其子元素#btn設置為絕對定位,并且位于父容器#contrainer的右下角,#btn{position: absolute;height: 20px;width: 100px;right: 5px;bottom: 3px;},子元素#fang使用了浮動法,以使4個數字按鈕顯示在同一行中,.fang{float: left;width: 20px;height: 20px;margin-left: 5px;font-size:12px;color: #FFF; background-color: #555;text-align: center;},這樣布局以后,無論父容器# contrainer的位置如何變動,4個數字按鈕相對于# contrainer的位置不會受到影響。

4 結束語

頁面布局對于改善網站的外觀非常重要,是為了使網站頁面結構更加清晰、有條理,而對頁面進行的排版,達到以最適合用戶瀏覽的形式將文字、圖片等頁面元素予以展示的效果。相比傳統的表格排版布局,DIV和CSS布局技術不僅順應了技術開發的需求,而且也更加符合Web前端開發標準。

參考文獻:

[1] 汪嬋嬋,徐興雷.Web前端開發任務驅動式教程:HTML5+CSS3+JavaScript[M].北京:電子工業出版社,2019.

[2] 楊松.網頁設計案例教程(HTML5+CSS3+JavaScript)[M].北京:航空工業出版社,2019.

[3] 黑馬程序員.網頁設計與制作:HTML5+CSS3+JavaScript[M].北京:中國鐵道出版社,2018.

[4] 殷正坤,魏紅偉,朱希偉.網頁設計與制作案例教程:HTML+CSS+JavaScript[M].成都:電子科技大學出版社,2019.

[5] 呂云翔,歐陽植昊,徐碩.HTML5+CSS3+JavaScript網頁設計案例開發[M].北京:清華大學出版社,2018.

收稿日期:2022-03-09

基金項目:2019年度陜西省職業技術教育學會基金項目:技能大賽引領高職物聯網專業課程體系構建研究(項目編號:SZJYB19-118)

作者簡介:李小遐(1968—),女,陜西西安人,教授,碩士,研究方向為軟件技術。

主站蜘蛛池模板: 无码精品一区二区久久久| 久草视频中文| 欧美一区精品| 四虎成人在线视频| 浮力影院国产第一页| 日本道中文字幕久久一区| 四虎永久免费地址在线网站| 欧美a级在线| 色欲不卡无码一区二区| 欧美在线导航| 欧美午夜精品| 日韩中文字幕亚洲无线码| 亚洲第一在线播放| 丰满人妻久久中文字幕| 亚洲福利一区二区三区| 午夜啪啪网| 国产成人av一区二区三区| 亚洲丝袜中文字幕| 国产a v无码专区亚洲av| 欧美一级在线看| 亚洲人成人无码www| 欧美成人二区| 中文字幕在线日韩91| 青青草国产精品久久久久| 亚洲AV无码乱码在线观看代蜜桃| 亚洲一区波多野结衣二区三区| 亚洲区欧美区| 亚洲日韩在线满18点击进入| 亚洲成av人无码综合在线观看| 她的性爱视频| 日本人妻丰满熟妇区| 亚洲精品人成网线在线| 亚洲一级无毛片无码在线免费视频 | 亚洲欧美激情小说另类| 美女内射视频WWW网站午夜 | 老司机午夜精品网站在线观看 | 一级毛片免费不卡在线视频| 亚洲高清资源| 国产特级毛片| 亚洲第一色网站| 久久人搡人人玩人妻精品| 国产99免费视频| 欧美色视频网站| 中文字幕久久亚洲一区| 9966国产精品视频| 色综合天天视频在线观看| 99久久精品免费观看国产| 国产主播在线观看| 欧美精品亚洲精品日韩专| 99久久精彩视频| 国产喷水视频| 伊人色天堂| 青草视频免费在线观看| 国产免费黄| 国产拍在线| 全色黄大色大片免费久久老太| 欧美成人午夜在线全部免费| 小说 亚洲 无码 精品| 久久这里只精品热免费99| 91视频99| 日韩美毛片| 亚洲一区二区日韩欧美gif| 免费av一区二区三区在线| 国产亚洲精品97AA片在线播放| 成人无码区免费视频网站蜜臀| 成人国产免费| 午夜福利无码一区二区| 欧美精品xx| 欧美亚洲国产一区| 欧美午夜在线观看| 麻豆精品视频在线原创| 国产美女91视频| 夜夜操狠狠操| 久久婷婷六月| 亚洲精品无码不卡在线播放| 色噜噜在线观看| 在线看片中文字幕| 亚洲第一网站男人都懂| 婷婷激情亚洲| 亚洲资源站av无码网址| 国产小视频a在线观看| 日本五区在线不卡精品|