【问题标题】:How to make background image and the content over the image responsive especially if the content is large如何使背景图像和图像上的内容响应,尤其是在内容很大的情况下
【发布时间】:2016-05-21 06:57:18
【问题描述】:

我在背景中有一张图片,图片上有一些按钮。我的图像通过包含一些样式变得响应,但图像上方的内容导致图像重复自身。

HTML:

<header class="mainheader" style="background-image:url(home.jpg);height:864px;">
  <!--  -->
  <div class="navbar-header">
    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar" style="background-color:white">
      <span class="sr-only">Toggle navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
    <!-- <a class="navbar-brand" href="#">Ristorante Con Fusion</a> -->
  </div>
  <div id="navbar" class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
      <li><a href="#" style="color:#FFFFFF">Pricing</a></li>
      <li><a href="#" style="color:#FFFFFF">Contact Us</a></li>
      <li><a href="#" style="color:#EC5297;">Login</a></li>
      <li>
        <button type="button" class="btn btn-default navbar-btn seeit">See it in Action</button>
      </li>
      <li>
        <button type="button" class="btn navbar-btn signp">Signup for FREE</button>
      </li>
    </ul>
  </div>
  <!--line-->
  <hr class="line">
  <div class="container">
    <!--responsive karna hain-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4 twobutton">
        <button type="button" class="btn navbar-btn one" style="width:130px;">Signup for FREE</button>
        <p>
          <button type="button" class="btn btn-default navbar-btn two" style="width:130px;">See it in Action</button>
        </p>
      </div>
    </div>
    <!--for-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4 for">
        <p>For</p>
      </div>
    </div>
    <!--buttons-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4" style="margin-left: 35em;">
        <img src="quvunew - Light [Recovered].png" class="img-responsive">
      </div>
    </div>
    <!--content-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4 content">
        <p style="color:#FFFFFF;">Send notifications to your users, even when they're not on your website Implement Chrome & Firefox Push Notifications on any Website in 5 mins
        </p>
      </div>
    </div>
    <!--content-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4 imagetwo">
        <img src="content.png">
      </div>
    </div>
    <!--signup-->
    <div class="row">
      <div class="col-xs-12 col-sm-6 col-md-4 col-md-offset-4 signup">
        <button type="button" class="btn navbar-btn   one" style="width:226px;">Signup for FREE</button>
      </div>
    </div>
  </div>
  <!--header image close-->
</header>

CSS:

.mainheader {
  no-repeat center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: 100% auto;
}

#rightnav {}

.seeit {
  background-color: Transparent;
  color: white;
  width: 166 px;
  height: 35 px;
}

.signp {
  background-color: #766DCC;
  color: white;
}

.line {
  color: #457AA9;
}

.twobutton {
  margin-top: 300px;
  margin-left: 100px;
}

.one {
  background-color: #766DCC;
}

.two {
  background-color: Transparent;
  color: white;
}

.for {
  margin-top: 5em;
  margin-left: 41em;
  color: #FFFFFF;
}

.centerimg {
  /*margin-left: 12em;*/
}

.content {
  margin-top: 2em;
}

.imagetwo {
  margin-top: 3em;
}

.signup {
  margin-top: 2em;
}

.backgroundimage {
  background-size: cover;
  height: 1400px;
  width: 1280px;
  background-position: center;
}

【问题讨论】:

    标签: html image twitter-bootstrap css


    【解决方案1】:

    这里:

    .mainheader {
      no-repeat center center fixed;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: 100% auto;
    }
    

    第一行缺少一些东西:这些设置的参数。从 HTML 中的 header 标签中移除 background-image 属性,并将其放入 CSS 中:

    .mainheader {
      background: url(home.jpg) no-repeat center center fixed;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
    }
    

    你的标题标签应该是:

    <header class="mainheader" style="height:864px;">
    

    或者更好地将高度设置从样式属性移动到 CSS 规则...

    补充:实际上background-size: 100% auto; 应该是background-size: cover;,如果您希望它的行为与您之前列出的前缀设置一样。 (我在上面改了)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-24
      • 2012-11-03
      • 1970-01-01
      • 2017-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多