Bootstrap每天必學(xué)之媒體對(duì)象
在Web頁面或者說移動(dòng)頁面制作中,常??吹竭@樣的效果,左邊居左(或居右),內(nèi)容居右(或居左)排列,如下圖所示:

我們常常把這樣的效果稱為媒體對(duì)象??梢哉f他是一種抽像的樣式,可以用來構(gòu)建不同類型的組件。這些組件都具有開篇所說的樣式風(fēng)格。那么在Bootstrap框架中特意將些部分提取出來做來一個(gè)組件介紹。其對(duì)應(yīng)的版本文件:
☑ LESS版本:對(duì)應(yīng)的源文件是media.less
☑ Sass版本:對(duì)應(yīng)的源文件是_media.scss
☑ 編譯后版本:對(duì)應(yīng)bootstrap.css文件第4792行~第4819行
1、媒體對(duì)象–默認(rèn)媒體對(duì)象
媒體對(duì)象一般是成組出現(xiàn),而一組媒體對(duì)象常常包括以下幾個(gè)部分:
☑ 媒體對(duì)像的容器:常使用“media”類名表示,用來容納媒體對(duì)象的所有內(nèi)容
☑ 媒體對(duì)像的對(duì)象:常使用“media-object”表示,就是媒體對(duì)象中的對(duì)象,常常是圖片
☑ 媒體對(duì)象的主體:常使用“media-body”表示,就是媒體對(duì)像中的主體內(nèi)容,可以是任何元素,常常是圖片側(cè)邊內(nèi)容
☑ 媒體對(duì)象的標(biāo)題:常使用“media-heading”表示,就是用來描述對(duì)象的一個(gè)標(biāo)題,此部分可選
如下圖所示:

除了上面四個(gè)部分之外,在Bootstrap框架中還常常使用“pull-left”或者“pull-right”來控制媒體對(duì)象中的對(duì)象浮動(dòng)方式。
在具體使用中如下所示:
<div class="media"> <a class="pull-left" href="#"> <img class="media-object" src="imgs/1.jpg" alt="..."> </a> <div class="media-body"> <h4 class="media-heading">系列:十天精通CSS3</h4> <div>全方位深刻詳解CSS3模塊知識(shí),經(jīng)典案例分析,代碼同步調(diào)試,讓網(wǎng)頁穿上絢麗裝備!</div> </div> </div>
運(yùn)行效果如下:

原理分析:
媒體對(duì)象樣式相對(duì)來說比較簡單,只是設(shè)置他們之間的間距,如下所示:
/bootstrap.css文件第4792行~4815行/
.media,
.media-body {
overflow: hidden;
zoom: 1;
}
.media,
.media .media {
margin-top: 15px;
}
.media:first-child {
margin-top: 0;
}
.media-object {
display: block;
}
.media-heading {
margin: 0 0 5px;
}
.media > .pull-left {
margin-right: 10px;
}
.media > .pull-right {
margin-left: 10px;
}
2、媒體對(duì)象–媒體對(duì)象的嵌套
在評(píng)論系統(tǒng)中,常常能看到下圖的效果:

從外往里看,這里有三個(gè)媒體對(duì)象,只不過是一個(gè)嵌套在另一個(gè)的里面。那么在Bootstrap框架中的媒體對(duì)象也具備這樣的功能,只需要將另一個(gè)媒體對(duì)象結(jié)構(gòu)放置在媒體對(duì)象的主體內(nèi)“media-body”,如下所示:
<div class="media">
<a class="pull-left" href="#">
<img class="media-object" src="…" alt="...">
</a>
<div class="media-body">
<h4 class="media-heading">Media Heading</h4>
<div>…</div>
<div class="media">
<a class="pull-left" href="#">
<img class="media-object" src="…" alt="...">
</a>
<div class="media-body">
<h4 class="media-heading">Media Heading</h4>
<div>…</div>
<div class="media">
<a class="pull-left" href="#">
<img class="media-object" src="…" alt="...">
</a>
<div class="media-body">
<h4 class="media-heading">Media Heading</h4>
<div>...</div>
</div>
</div>
</div>
</div>
</div>
</div>
在確保你的結(jié)構(gòu)沒有嵌套錯(cuò)的情況下,能直接看到下圖這樣的效果:

3、媒體對(duì)象–媒體對(duì)象列表
媒體對(duì)象的嵌套僅是媒體對(duì)象中一個(gè)簡單應(yīng)用效果之一,在很多時(shí)候,我們還會(huì)碰到一個(gè)列表,每個(gè)列表項(xiàng)都和媒體對(duì)象長得差不多,同樣用評(píng)論系統(tǒng)來說事:

使用方法:
針對(duì)上圖的媒體對(duì)象列表效果,Bootstrap框架提供了一個(gè)列表展示的效果,在寫結(jié)構(gòu)的時(shí)候可以使用ul,并且在ul上添加類名“media-list”,而在li上使用“media”,示例代碼如下:
<ul class="media-list"> <li class="media"> <a class="pull-left" href="#"> <img class="media-object" src=" " alt="..."> </a> <div class="media-body"> <h4 class="media-heading">Media Header</h4> <div>…</div> </div> </li> <li class="media">…</li> <li class="media">…</li> </ul>
運(yùn)行效果如下:

原理分析:
媒體對(duì)象列表,在樣式上也并沒有做過多的特殊處理,只是把列表的左間距置0以及去掉了項(xiàng)目列表符號(hào):
/bootstrap.css文件第4816行~第4819行/
.media-list {
padding-left: 0;
list-style: none;
}
如果大家還想深入學(xué)習(xí),可以點(diǎn)擊這里進(jìn)行學(xué)習(xí),再為大家附兩個(gè)精彩的專題:Bootstrap學(xué)習(xí)教程 Bootstrap實(shí)戰(zhàn)教程
以上就是本文的全部內(nèi)容,幫助大家學(xué)習(xí)Bootstrap媒體對(duì)象,希望對(duì)大家的學(xué)習(xí)有所幫助。
相關(guān)文章
微信小程序h5頁面跳轉(zhuǎn)小程序的超詳細(xì)講解
開發(fā)中涉及到一個(gè)需求,就是從一個(gè)預(yù)約票購買的頁面需要跳轉(zhuǎn)到?小程序,下面這篇文章主要給大家介紹了關(guān)于微信小程序h5頁面跳轉(zhuǎn)小程序的超詳細(xì)講解,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
???????Rxjs?map,?mergeMap?和?switchMap?的區(qū)別與聯(lián)系
這篇文章主要介紹了???????Rxjs?map,mergeMap和switchMap的區(qū)別與聯(lián)系,map、mergeMap和switchMap是RxJS中的三個(gè)主要運(yùn)算符,在SAP?Spartacus開發(fā)中有著廣泛的使用場景2022-07-07
通過JAVAScript實(shí)現(xiàn)頁面自適應(yīng)
通過JAVAScript實(shí)現(xiàn)頁面自適應(yīng)...2007-01-01
Bootstrap 表單驗(yàn)證formValidation 實(shí)現(xiàn)遠(yuǎn)程驗(yàn)證功能
這篇文章主要介紹了Bootstrap 表單驗(yàn)證formValidation 實(shí)現(xiàn)遠(yuǎn)程驗(yàn)證功能,需要的朋友可以參考下2017-05-05
異步動(dòng)態(tài)加載js與css文件的js代碼
這篇文章介紹了異步動(dòng)態(tài)加載js與css文件的幾種方法,有需要的朋友可以參考一下2013-09-09
ionic2打包android時(shí)gradle無法下載的解決方法
這篇文章主要為大家詳細(xì)介紹了ionic2打包android時(shí)gradle無法下載的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
如何使用wheelnav.js構(gòu)建酷炫的動(dòng)態(tài)導(dǎo)航菜單
本文主要介紹一種基于SVG的web動(dòng)態(tài)導(dǎo)航組件,通過這個(gè)組件可以實(shí)現(xiàn)很多豐富酷炫的效果,首先介紹這款wheelnav.js的相關(guān)知識(shí),然后結(jié)合代碼講解如何在html頁面中創(chuàng)建其對(duì)象,接著講解wheelnav的一些屬性和方法,最后給出基于wheelnav的實(shí)際成果,喜歡的朋友一起學(xué)習(xí)吧2024-06-06

