html - 更改视口(viewport)后元素彼此远离

标签 html css responsive element

请有人帮我解决这个响应问题。更改视口(viewport)后,我的标题和主要元素彼此相去甚远。 jsfiddle

<header>
  <div class="slider">
    <img src="picture1" alt=""> 
   <img src="picture2" alt="" >
  </div>
</header>

<main>
  <h1>Hello Hello</h1>
</main>

CSS

 body{
      margin:0;
    }

.slider{
  height: 36em; 
  width:100%;
  position: relative;
  overflow: hidden;
}

.slider img{
  width:100%;
  height: auto;
  position: absolute;  
  top:0;
  left:0;
}

main{
  margin-top: 0.1em;
}

最佳答案

那是因为你设置了固定高度

.slider{
  height: 36em; // <-- HERE
  width:100%;
  position: relative;
  overflow: hidden;
}

所以当屏幕缩小时,图像也会缩小,并且 .slider 保持相同的高度

只需删除这个固定高度并将其更改为max-height,如果图像需要是绝对的,则需要使用javascript 手动计算幻灯片的高度

Jsfiddle

Javascript 与 jquery

$(document).ready(function(){
    $(window).resize();
});

$(window).resize(function(){
    var height = $('.slider img').height();
    $('.slider').height(height);
});

CSS

body{
  margin:0;
}

.slider{
  max-height: 36em; 
  width:100%;
  position: relative;
  overflow: hidden;
}

.slider img{
  width:100%;
  height: auto;
  position: absolute;  
  top:0;
  left:0;width:100%;
}

main{
  margin-top: 0.1em;
}

HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<header>
  <div class="slider">
    <img src="http://www.freewalkertours.com/rio/wp-content/uploads/sites/2/2017/04/o-que-fazer-no-rio-de-janeiro-cristo.jpg" alt=""> 
   <img src="https://mmoexaminer.com/wp-content/uploads/2017/10/sw352356.jpg" alt="" >
  </div>
</header>

<main>
  <h1>Hello Hello</h1>
</main>

关于html - 更改视口(viewport)后元素彼此远离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48527815/

相关文章:

javascript - 单击事件未在子 div 中捕获

html - 使用媒体查询在手机上重新定位 Logo

javascript - 打印/预览忽略我的 Print.css

javascript - 为句子中空间分离的单词创建单个链接

html - 如何使子菜单出现在左侧,而不是右侧

css - 如何在文本旁边 float 图像并在较小的屏幕上堆叠

css - 如何让 Cordova 应用程序的 Tabbar 很好地适应各种手机屏幕尺寸?

javascript - 在提交表单之前显示视频

javascript - RGraph 没有显示任何内容?

css - 最常用的 Bootstrap CDN 链接/链接?