Bootstrap和body左右填充



我正在使用Bootstrap创建一个响应式网页。我需要添加一个左padding-left和右padding-right到body,总是有一个50px宽的空白安全区域<两边都是。问题:当我调整视口的大小,容器的内容溢出在右边。>

有没有简单的方法来达到这个效果?我只试了下面这个,但是它看起来不太好(容器太窄了)

// container responsivity fix
.container {
  .container-fixed();
  @media (min-width: @screen-sm-min) {
    width: calc(~'@{container-sm} - 100px');
  }
  @media (min-width: @screen-md-min) {
    width: calc(~'@{container-md} - 80px');
  }
  @media (min-width: @screen-lg-min) {
    width: calc(~'@{container-lg} - 100px');
  }
}
HTML结构:

<header>
  <div class="container">
    <div class="row">
      <div class="col-xs-12 col-sm-4">
        <a href="#">
          LOGO
        </a>
      </div>
      <div class="col-xs-12 col-sm-5">
        <h2>Lorem ipsum dolor sit amet, <strong> consectetur adipiscing elit.</strong> </h2>
      </div>
      <div class="col-xs-12 col-sm-3 text-right">
        <i class="flag cz active">A</i>
        <i class="flag uk">B</i>
        <i class="flag ge">C</i>
      </div>
    </div>
  </div>
</header>

小提琴:http://jsfiddle.net/o5bkpv7c/

文本是不可伸缩的,所以它将不适合在头部超过一定的断点。我通常使用break word或缩小文本大小或使用fitText.js。有更简洁的方法。

演示:http://jsfiddle.net/o5bkpv7c/4/

body {
    padding: 0 20px;
}
header {
    background: lightblue;
    padding: 1em 0; 
}
header h2 {font-size:1.2rem;margin:10px 0;}

.flag {
    width: 29px;
    height: 20px;
    display: inline-block;
    background: red; 
}
@media (min-width:768px) {
    
    header h2 {font-size:1.3rem;margin:0;}
}

还有,看看你想要的布局,我不会用网格系统。这里有一个更简洁的方法。

http://jsbin.com/tuyeta/1/edit

最新更新