bootstrap-媒体对象


在Web页面或者说移动页面制作中,常常看到这样的效果,左边居左(或居右),内容居右(或居左)排列,如下图所示:

我们常常把这样的效果称为媒体对象。可以说他是一种抽像的样式,可以用来构建不同类型的组件。这些组件都具有开篇所说的样式风格。那么在Bootstrap框架中特意将些部分提取出来做来一个组件介绍。其对应的版本文件:

☑ LESS版本:对应的源文件是media.less

☑ Sass版本:对应的源文件是_media.scss

☑ 编译后版本:对应bootstrap.css文件第4792行~第4819行

1、媒体对象–默认媒体对象

媒体对象一般是成组出现,而一组媒体对象常常包括以下几个部分:

☑ 媒体对像的容器:常使用“media”类名表示,用来容纳媒体对象的所有内容

☑ 媒体对像的对象:常使用“media-object”表示,就是媒体对象中的对象,常常是图片

☑ 媒体对象的主体:常使用“media-body”表示,就是媒体对像中的主体内容,可以是任何元素,常常是图片侧边内容

☑ 媒体对象的标题:常使用“media-heading”表示,就是用来描述对象的一个标题,此部分可选

如下图所示:

除了上面四个部分之外,在Bootstrap框架中还常常使用“pull-left”或者“pull-right”来控制媒体对象中的对象浮动方式。

在具体使用中如下所示:


1
2
3
4
5
6
7
8
9
< 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模块知识,经典案例分析,代码同步调试,让网页穿上绚丽装备!</ div >
   </ div >
</ div >

运行效果如下:

原理分析:

媒体对象样式相对来说比较简单,只是设置他们之间的间距,如下所示:

/bootstrap.css文件第4792行~4815行/


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
.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、媒体对象–媒体对象的嵌套

在评论系统中,常常能看到下图的效果:

从外往里看,这里有三个媒体对象,只不过是一个嵌套在另一个的里面。那么在Bootstrap框架中的媒体对象也具备这样的功能,只需要将另一个媒体对象结构放置在媒体对象的主体内“media-body”,如下所示:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
< 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 >

在确保你的结构没有嵌套错的情况下,能直接看到下图这样的效果:

3、媒体对象–媒体对象列表

媒体对象的嵌套仅是媒体对象中一个简单应用效果之一,在很多时候,我们还会碰到一个列表,每个列表项都和媒体对象长得差不多,同样用评论系统来说事:

使用方法:

针对上图的媒体对象列表效果,Bootstrap框架提供了一个列表展示的效果,在写结构的时候可以使用ul,并且在ul上添加类名“media-list”,而在li上使用“media”,示例代码如下:


1
2
3
4
5
6
7
8
9
10
11
12
13
< 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 >

运行效果如下:

原理分析:

媒体对象列表,在样式上也并没有做过多的特殊处理,只是把列表的左间距置0以及去掉了项目列表符号:

/bootstrap.css文件第4816行~第4819行/


1
2
3
4
.media-list {
  padding-left : 0 ;
  list-style : none ;
}

以上就是本文的全部内容,帮助大家学习Bootstrap媒体对象,希望对大家的学习有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值