文章推/拉对齐使用bootstrap 3

时间:2013-09-27 09:01:16

标签: css twitter-bootstrap twitter-bootstrap-3

我正在使用bootstrap 3,我尝试在桌面上为文章设置特定的网格对齐。

在移动设备上,我想订购文章内容:

  1. 标题
  2. 图像
  3. 内容
  4. 在桌面上,我想要左边的图像以及右边的标题和内容。

    Alignment i want http://f.cl.ly/items/300e2K3V3H3c3f3F3p0q/Napkin%2027.09.13%209.47.05%20AM.png

    这是我的代码

    <article class="row">
        <header class="col-md-8 col-md-push-4">
            <a href="#">
                <h2>Title</h2>
            </a>
        </header>
        <div class="col-md-4 col-md-pull-8">
            <figure>
                <a class="thumbnail" href="#">
            <img src="..." alt="4x3 Image" class="img-responsive">
                    <figcaption>Caption</figcaption>
                </a>
            </figure>
        </div>
        <div class="col-md-8 col-md-push-4">
            <p>Content</p>
        </div>
    </article>
    

    但是使用此代码,内容位于右侧,但位于图像下方。

    http://f.cl.ly/items/1T3f093W2I0m3Q1E360g/Napkin%2027.09.13%2010.56.59%20AM.png

    有没有一种简单的方法可以得到我想要的东西?

4 个答案:

答案 0 :(得分:5)

基于Possible to achieve this Mobile/Desktop layout using Bootstrap? (or other grid)

<强>的CSS:

.floatright{float:right;}
@media (max-width: 768px)
{    
    .floatright{float:none;}
}  

<强> HTML:

<div class="container" style="background-color:green">
<article class="row">
    <header class="col-md-8 floatright">
        <a href="#">
            <h2>Title</h2>
        </a>
    </header>
    <div class="col-md-4">
        <figure>
            <a class="thumbnail" href="#">
        <img src="..." alt="4x3 Image" class="img-responsive">
                <figcaption>Caption</figcaption>
            </a>
        </figure>
    </div>
    <div class="col-md-8 floatright">
        <p>Content</p>
    </div>
</article>
</div>

答案 1 :(得分:1)

这是你的列类:

MD: 4(图像) - 8(标题)=&gt;第1行(最多12列)
8(内容)=&gt;新行

这将创建一个新行,第二行放在图像/标题列下面
所以你必须使用这个列设置(使用隐藏类),如下所示:

MD: 2(图片) - 5(标题) - 5(hidden-xs hidden-sm)
5(内容)

试试这段代码:

<强> CSS:

<style>
        .col-md-2{
            height: 300px;
            background-color: blue;
            color: white;
            border: 2px solid red;
        }
        .col-md-4{
            height: 100px;
        }
        .col-md-5{
            height: 100px;
            background-color: red;
            color: white;
            border: 2px solid black;
        }
</style>

<强> HTML:

    <article class="row">
        <header class="col-md-5 col-md-push-2">
            <a href="#">
                <h2>Title</h2>
            </a>
        </header>
        <div class="col-md-2 col-md-pull-5">
            <figure>
                <a class="thumbnail" href="#">
                    <img src="" alt="4x3 Image" class="img-responsive">
                    <figcaption>Caption</figcaption>
                </a>
            </figure>
        </div>
        <div class="hidden-xs hidden-sm">
            <div class="col-md-4"></div>
        </div>
        <div class="col-md-5 col-md-pull-5">
            <p>Content</p>
        </div>
    </article>

也许它无法解决问题。但你可以使用这个技巧。 抱歉我的英语不好

答案 2 :(得分:0)

使用col-md-8类更大的div并在其中放置标题和文本,并在两者上使用bootstrap的col-md-12类来叠加在一起

答案 3 :(得分:0)

以下是解决问题的方法

<article class="row">
    <header class="col-md-8 pull-right">
        <a href="#">
            <h2>Title</h2>
        </a>
    </header>
    <div class="col-md-4 pull-left">
        <figure>
            <a class="thumbnail" href="#">
        <img src="..." alt="4x3 Image" class="img-responsive">
                <figcaption>...</figcaption>
            </a>
        </figure>    </div>
    <div class="col-md-8 pull-right">
        <p>content</p>
    </div>
</article>