【问题标题】:How to place a div over a image? [closed]如何在图像上放置一个div? [关闭]
【发布时间】:2013-07-03 19:02:17
【问题描述】:

我想在<img> 上放置一个<div>

这是 HTML:

body {
  background-color: #cCa;
}

.image {
  position: relative;
  background-repeat: no-repeat;
}

.content {
  background-color: lightGrey;
  position: absolute;
  overflow: none;
  left: 40px;
  top: 40px;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/css/bootstrap.min.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/css/bootstrap-responsive.min.css" rel="stylesheet"/>

<div class="container-fluid">
  <div class="row-fluid">
    <div class="span12">
      <div class="image"> <img src="css_js/img/image.jpg"> </div>
      <div class="content img-circle">[content]</div>
    </div>
  </div>
</div>

更多图片信息:

这是窗口视口较大时的样子。

这是窗口视口较小时的样子。

关于如何解决它的想法?任何帮助都会很棒!

【问题讨论】:

  • 你尝试过使用 css z-index 吗?
  • @Nazanin 这个问题只有 5 个小时!还;如果您的问题没有引起您想要的注意,请尝试对其进行编辑以使其更清晰,强烈反对转发相同的问题
  • 这是另一种方法:jsfiddle.net/h46KA/1

标签: html css twitter-bootstrap


【解决方案1】:

尝试将内容divz-index属性设置为高于图像,如下所示:

.content{
    z-index: 3;
}

这将使内容div 位于图像上方。为了让它随着浏览器变小而变大,您将需要使用媒体查询。这些是您包含在脑海中的标签,可让您根据屏幕大小加载不同的 CSS 文件。基本上,当屏幕较小时,您应该为加载的 CSS 文件设置较大的字体。如果您不熟悉媒体查询,这是阅读它们的好地方:https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries。祝你好运!

更新:

根据您的评论,您应该将代码更改为:

<div class="span12">
    <div class="image"> 
        <img src="css_js/img/image.jpg"> 
        <div class="content img-circle">[content]</div>
    </div>
</div>

这使得img.content.image 包裹。然后,在您的 CSS 文件中,添加以下规则:

.content{
    position: relative;
}

这将改变内容相对于图像div 所在位置的位置。阅读position 属性以了解如何移动.content。您仍然需要媒体查询来更新 div 的大小/位置,以响应浏览器大小的变化。

【讨论】:

  • 我希望
    被固定到 并且随着浏览器大小的调整,div 的位置随着图像的位置而改变。
  • 好的,但是有没有办法使用引导类? "bootstrap 是 css 框架"
  • 我知道引导程序是什么,不,没有。您可以包含引导响应 css 文件,但是如果没有自定义,它不会做您想做的事情,而且现在制定自己的 css 规则比尝试自定义引导规则要简单得多
猜你喜欢
相关资源
最近更新 更多
热门标签