html - 如何使简单的 JS slider 完全响应?

标签 html css

这是一个简单的 Js slider ,需要使其响应移动设备。但是当我将最大宽度应用于#slider 和#image 时,它​​隐藏了整个 div 元素。例如默认宽度应该是 500pxl 和 300pxl 高度。适用于宽屏。它应该根据手机和平板电脑的屏幕宽度自动调整大小。是否可以? HTML:

<body onLoad="photoA()">
<div id="slider">
<img src="Images/img1.jpg" id="image" >
 <img onClick="photo(-1)" class="left" src="Images/arrow_left.png">  
 <img onClick="photo(1)" class="right" src="Images/arrow_right.png"> 
</div>

CSS:

*{
    margin:0px;
    }
#slider {
    height:350px;
    max-width:500px;
    margin: 5px auto;
    position:relative;
    border-radius:4px;
    overflow:hidden;
    }
#image {
    height:350px;
    width:500px;
    position:absolute;
    }

.left {
    height:50px;
    width:50px;
    position:absolute;
    top:40%;
    left:10px;
    opacity:1;
    transition: all .2s ease-in-out 0s;
    }
.right {
    height:50px;
    width:50px;
    position:absolute;
    top:40%;
    right:10px;
    opacity:1;
    transition: all .5s ease-in-out 0s;
    }
.right:hover ,  .left:hover {
    opacity:0.6; cursor: pointer;
    }

最佳答案

绝对定位主图的原因是什么?这只会让你的生活变得悲惨。

如果您进行以下更改,您将获得所需的结果:

    #slider {
        width: 100%;
        max-width:500px;
        height: auto;
        margin: 5px auto;
        position:relative;
        border-radius:4px;
      }
      #image {
        width: 100%;
        height: auto;
      }

为了使您的 slider 看起来更好,我建议您还使用:

  .left {
    height:50px;
    width:50px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    left:10px;
    opacity:1;
    transition: all .2s ease-in-out 0s;
  }
  .right {
    height:50px;
    width:50px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    right:10px;
    opacity:1;
    transition: all .5s ease-in-out 0s;
  }

注意:div 消失了,因为当它的所有子元素都绝对定位时,您不能将最大宽度设置为父元素没有宽度和高度或最大宽度和最大高度(它们的行为就好像它们没有设置值一样) .

关于html - 如何使简单的 JS slider 完全响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48723728/

相关文章:

javascript - 使用jquery根据span标签中的文本写入ID

css - 高库存 : Change color of date input box border if active

html - 使一个非常宽的 div 水平滚动而不影响页面的其余部分

javascript - 在运行时使用 javascript 加载 div 背景图像(通过/使用?CSS)

java - 在 GWT 中遍历动态无序列表

HTML 表 : put an image or circle on border

python - 换行符阻止 BeautifulSoup 提取数据

html - 鼠标悬停时CSS更改链接颜色

html - 为什么这个高度为 100vh 的 div 没有覆盖整个视口(viewport)?

javascript - 简单的 cookie 栏 - 关闭按钮