html - 当父级更改大小时,图像容器不灵活

标签 html image css containers

我将从头开始。我创建了一个响应式网站,其中有一个可以改变高度的元素。其中有一张图片,我必须为其创建一个容器,以便能够相对于它定位新元素。不幸的是,在调整大小后(例如,当您转动手机时)- 容器不会随图像改变宽度。如果您刷新参数的值(例如,“检查元素”删除并添加“显示”),则它已经正确设置。如何解决这个问题?

var i = 0;
$('button').on('click', function() {
  if (i%2) $('.background').css('height', '200px');
  else $('.background').css('height', '300px');i++;
});
.background {
  width: 600px;
  height: 200px;
  background-color: black;
  transition: 0.3s;
}

.background > .container {
  height: 100%;
  display: inline-block;
  background-color: white;
}

.background > .container > img {
  height: 100%;
  opacity: 0.7;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="background">
  <div class="container">
    <img src="https://i.ytimg.com/vi/bVzpweTJvhc/hqdefault.jpg">
  </div>
</div>

<br><br>

<button>Change</button>

最佳答案

container 显示为 inline 时,它可以工作(我还不知道为什么……)

var i = 0;
$('button').on('click', function() {
  if (i%2) $('.background').css('height', '200px');
  else $('.background').css('height', '300px');i++;
});
.background {
  width: 600px;
  height: 200px;
  color: white;
  background-color: black;
  transition: 0.3s;
}

.background > .container {
  display: inline;
}

.background > .container > img {
  height: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="background">
  <div class="container">
    <img src="https://i.ytimg.com/vi/bVzpweTJvhc/hqdefault.jpg">
  </div>
  <span>I move too....</span>
</div>
<br><br>
<button>Change</button>

关于html - 当父级更改大小时,图像容器不灵活,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41336059/

相关文章:

html - IE7 中 CSS 菜单的奇怪可见性问题

html - CSS 转换在移动设备上不起作用

html - 为什么 ul 上部空白

javascript - 使用canvas和javascript读取图像的像素颜色

html - 页面重新加载时所有数据都消失了。有什么办法可以避免这种情况吗?

html - Bootstrap 4 文本环绕另一列/图像

android - Drawable-hdpi、Drawable-mdpi、Drawable-ldpi Android

html - CSS 溢出问题 iPad

css - 我无法让我的图像检测 anchor 并打开新页面

css - 无法设置 Angular Material Toast 的高度