詳解jQuery移動頁面開發(fā)中的ui-grid網(wǎng)格布局使用
在移動設(shè)備上,屏幕寬度狹窄,因此通常不使用多欄布局,但是有時(shí)你可能需要將小的元素(如按鈕或并排導(dǎo)航標(biāo)簽,例如)多列排列在一起。Jquery Mobile 框架提供了一種簡單的方法構(gòu)建基于css 的分欄布局,叫做ui-grid
Jquery Mobile 提供有四個預(yù)設(shè)的布局,可以在任何情況下都需要列
- 兩列(使用ui-grid-a類)
- 三列(使用ui-grid-b類)
- 四列(使用ui-grid-c類)
- 五列(使用ui-grid-d類)
網(wǎng)格是100%的寬度,完全看不見的(沒有邊界或背景)和沒有margin或padding,所以他們不會干擾樣式的元素放在他們里面。在網(wǎng)格容器,子元素被分配ui-block-a / b / c/ d 以連續(xù)的方式,使每個“塊”元素浮動并列,形成網(wǎng)格。其中ui-block-a類基本上清除浮將開始新的一行(見多行的網(wǎng)格,在下面)。
ui-grid-a 兩列布局
建立個兩列(50 / 50%)布局,第一層(父容器)添加ui-grid-a屬性,第二層(兩個子容器)里面分別添加ui-block-a和ui-block-b:
<div class="ui-grid-a"> <div class="ui-block-a"><strong>I'm Block A</strong> and text inside will wrap</div> <div class="ui-block-b"><strong>I'm Block B</strong> and text inside will wrap</div> </div><!-- /grid-a -->
上述標(biāo)記產(chǎn)生以下內(nèi)容布局:

正如你看到的,缺省情況下網(wǎng)格沒有視覺造型;他們只是呈現(xiàn)內(nèi)容并排。
網(wǎng)格的類可以被應(yīng)用到任何容器。在下一個例子中,我們添加一個ui-grid-a,并應(yīng)用ui-block,兩個按鈕分別延伸到50%的屏幕寬度
<fieldset class="ui-grid-a"> <div class="ui-block-a"><button type="submit" data-theme="c">Cancel</button></div> <div class="ui-block-b"><button type="submit" data-theme="b">Submit</button></div> </fieldset>

請注意,這個框架增加網(wǎng)格中的左和右margin的按鈕。為一個單一的按鈕,您可以使用類ui-grid-solo和按鈕類ui-block-a,像下面的例子一個div。這樣的按鈕將得到同樣的margin
<div class="ui-grid-a"> <div class="ui-block-a"><button type="button" data-theme="c">Previous</button></div> <div class="ui-block-b"><button type="button" data-theme="c">Next</button></div> </div> <div class="ui-grid-solo"> <div class="ui-block-a"><button type="v" data-theme="b">More</button></div> </div>

主題類(沒有數(shù)據(jù)主題屬性)從主題系統(tǒng)可以被添加到一個元素,包括網(wǎng)格。在下面的塊,我們增加了兩個類:ui-bar添加默認(rèn)的bar和ui-bar-e應(yīng)用背景梯度和字體風(fēng)格的“E”工具欄主題的樣本。為了說明的目的,一個內(nèi)聯(lián)style=“height:120px”屬性也被添加到每個網(wǎng)格設(shè)置每一個標(biāo)準(zhǔn)高度。

ui-block-b 三列布局
網(wǎng)格布局配置使用class= ui-grid-b在父母和3個子容器的元素,每個都有其各自的ui-block-a / a / c類,創(chuàng)建一行三列布局(33 / 33 / 33%)。注意:這些塊同樣風(fēng)格的主題課程,網(wǎng)格布局清晰可見。
<div class="ui-grid-b"> <div class="ui-block-a">Block A</div> <div class="ui-block-b">Block B</div> <div class="ui-block-c">Block C</div> </div><!-- /grid-b -->
這為我們的內(nèi)容,將產(chǎn)生一個33 / 33 / 33%網(wǎng)格布局

ui-block-c 四列布局
一行四列,25 / 25 / 25 / 25%網(wǎng)格,是通過在父容器指定class= ui-grid-c和添加四分之一塊。注意:這些塊同樣風(fēng)格的主題課程,網(wǎng)格布局清晰可見

ui-block-c 五列布局
一行五列,20 / 20 / 20 / 20 / 20%網(wǎng)格,是通過在父容器指定class= ui-grid-d

多行多列布局
網(wǎng)格設(shè)計(jì)包裝的項(xiàng)目多行。例如,如果您指定了一個三行三列網(wǎng)格(ui-grid-b)在一個容器,有九個子塊,則換到3排各3項(xiàng)。有一個CSS規(guī)則明確的花車和開始新的一行,當(dāng)class= ui-block-a是確保在重復(fù)序列分配塊(A,B,C類,A,B,C,等)映射到網(wǎng)格類型??梢越o每行的第一個容器設(shè)置為class=ui-block-a 來清除浮動,這樣9 個子容器的class 應(yīng)為:class=ui-block-(a,b,c,a,b,c,a,b,c)。
<div id="grid" class="ui-grid-b"> <div class="ui-block-a"><div class="ui-bar ui-bar-e">A</div></div> <div class="ui-block-b"><div class="ui-bar ui-bar-e">B</div></div> <div class="ui-block-c"><div class="ui-bar ui-bar-e">C</div></div> <div class="ui-block-a"><div class="ui-bar ui-bar-e">A</div></div> <div class="ui-block-b"><div class="ui-bar ui-bar-e">B</div></div> <div class="ui-block-c"><div class="ui-bar ui-bar-e">C</div></div> <div class="ui-block-a"><div class="ui-bar ui-bar-e">A</div></div> <div class="ui-block-b"><div class="ui-bar ui-bar-e">B</div></div> <div class="ui-block-c"><div class="ui-bar ui-bar-e">C</div></div> </div>

<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>grid-layout demo</title> <link rel="stylesheet" > <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <!-- The script below can be omitted --> <script src="/resources/turnOffPushState.js"></script> <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script> </head> <body> <div data-role="page"> <div data-role="header"> <h1>Grid Layout Example</h1> </div> <div data-role="content"> <div class="ui-grid-a"> <div class="ui-block-a"><strong>I'm Block A</strong> and text inside will wrap.</div> <div class="ui-block-b"><strong>I'm Block B</strong> and text inside will wrap.</div> </div><!-- /grid-a --> </div> </div> </body> </html>

相關(guān)文章
jquery mobile實(shí)現(xiàn)可折疊的導(dǎo)航按鈕
這篇文章主要為大家詳細(xì)介紹了jquery mobile實(shí)現(xiàn)可折疊的導(dǎo)航按鈕,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
jQuery使用serialize()表單序列化時(shí)出現(xiàn)中文亂碼問題的解決辦法
列化中文時(shí)出現(xiàn)中文亂碼問題,怎么回事呢?下面給大家介紹下jQuery使用serialize()序列化表單時(shí)出現(xiàn)中文亂碼問題的解決辦法,有需要的朋友參考下2016-07-07
jQuery監(jiān)聽文件上傳實(shí)現(xiàn)進(jìn)度條效果的方法
下面小編就為大家?guī)硪黄猨Query監(jiān)聽文件上傳實(shí)現(xiàn)進(jìn)度條效果的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10
jquery實(shí)現(xiàn)當(dāng)滑動到一定位置時(shí)固定效果
這篇文章主要介紹了jquery實(shí)現(xiàn)當(dāng)滑動到一定位置時(shí)固定效果,需要的朋友可以參考下2014-06-06
打造個性化的功能強(qiáng)大的Jquery虛擬鍵盤(VirtualKeyboard)
本文主要講訴了如何一起一步一步打造個性化的VirtualKeyboard:功能強(qiáng)大的Jquery虛擬鍵盤,非常的詳細(xì),非常實(shí)用,有需要的朋友可以參考下2014-10-10
JS實(shí)現(xiàn)復(fù)制內(nèi)容到剪貼板功能兼容所有瀏覽器(推薦)
這篇文章主要介紹了JS實(shí)現(xiàn)復(fù)制內(nèi)容到剪貼板功能兼容所有瀏覽器(推薦)的相關(guān)資料,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
jquery實(shí)現(xiàn)頁面常用的返回頂部效果
這篇文章主要為大家詳細(xì)介紹了jquery實(shí)現(xiàn)頁面常用的返回頂部效果代碼,感興趣的小伙伴們可以參考一下2016-03-03
使用jQuery實(shí)現(xiàn)一個類似GridView的編輯,更新,取消和刪除的功能
在項(xiàng)目中遇到這樣的需求當(dāng)用戶點(diǎn)擊編輯時(shí),在點(diǎn)擊行下動態(tài)產(chǎn)生一行,編輯銨鈕變?yōu)閐isabled,新產(chǎn)生的一行有更新和取消的銨鈕,點(diǎn)擊“取消”銨鈕,刪除剛剛動態(tài)產(chǎn)生的行,編輯銨鈕狀態(tài)恢復(fù)。下面小編給大家分享實(shí)例代碼,一起看看吧2017-03-03

