在CSS和HTML中更改幻灯片显示中的图片大小

时间:2018-09-28 20:35:12

标签: html css slideshow photo

我当前正在制作一个网站,当我查看幻灯片时,它太大了,有什么办法可以改变它的大小?我正在使用在Visual Studio中制作的HTML和CSS,这是网站的图片,缩小了50%slideshow

var slideIndex = 1;
showDivs(slideIndex);

function plusDivs(n) {
  showDivs(slideIndex += n);
}

function currentDiv(n) {
  showDivs(slideIndex = n);
}

function showDivs(n) {
  var i;
  var x = document.getElementsByClassName("mySlides");
  var dots = document.getElementsByClassName("demo");
  if (n > x.length) {
    slideIndex = 1
  }
  if (n < 1) {
    slideIndex = x.length
  }
  for (i = 0; i < x.length; i++) {
    x[i].style.display = "none";
  }
  for (i = 0; i < dots.length; i++) {
    dots[i].className = dots[i].className.replace(" w3-opacity-off", "");
  }
  x[slideIndex - 1].style.display = "block";
  dots[slideIndex - 1].className += " w3-opacity-off";
}
.mySlides {
  display: none
}

.demo {
  cursor: pointer
}
<link href="https://www.w3schools.com/w3css/4/w3.css" rel="stylesheet"/>
<div class="w3-content" style="max-width:1200px">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2018/09/07/17/50/fruit-3661159_960_720.jpg" style="width:100%">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2016/10/11/12/37/piano-keys-1731467_960_720.jpg" style="width:100%">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2017/11/14/18/31/mushroom-2949539_960_720.jpg" style="width:100%">

    <div class="w3-row-padding w3-section">
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2018/09/07/17/50/fruit-3661159_960_720.jpg" style="width:100%" onclick="currentDiv(1)">
      </div>
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2016/10/11/12/37/piano-keys-1731467_960_720.jpg" style="width:100%" onclick="currentDiv(2)">
      </div>
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2017/11/14/18/31/mushroom-2949539_960_720.jpg" style="width:100%" onclick="currentDiv(3)">
      </div>
    </div>
  </div>

2 个答案:

答案 0 :(得分:0)

正在寻找这样的东西吗?我删除了W3.css库。此示例位于W3schools.com上。从我当前的位置,我无法访问您发布的照片​​,因此我不得不使用其他示例照片。

var slideIndex = 1;
showSlides(slideIndex);

function plusSlides(n) {
  showSlides(slideIndex += n);
}

function currentSlide(n) {
  showSlides(slideIndex = n);
}

function showSlides(n) {
  var i;
  var slides = document.getElementsByClassName("mySlides");
  var dots = document.getElementsByClassName("demo");
  if (n > slides.length) {
    slideIndex = 1
  }
  if (n < 1) {
    slideIndex = slides.length
  }
  for (i = 0; i < slides.length; i++) {
    slides[i].style.display = "none";
  }
  for (i = 0; i < dots.length; i++) {
    dots[i].className = dots[i].className.replace(" active", "");
  }
  slides[slideIndex - 1].style.display = "block";
  dots[slideIndex - 1].className += " active";
}
body {
  font-family: Arial;
  margin: 0;
}

* {
  box-sizing: border-box;
}

img {
  vertical-align: middle;
}


/* Position the image container (needed to position the left and right arrows) */

.container {
  position: relative;
  max-width: 1280px;
  margin: 0 auto;
}


/* Hide the images by default */

.mySlides {
  display: none;
}


/* Add a pointer when hovering over the thumbnail images */

.cursor {
  cursor: pointer;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}


/* Six columns side by side */

.column {
  float: left;
  width: 33.33%;
  padding: 1%;
}


/* Add a transparency effect for thumnbail images */

.demo {
  opacity: 0.6;
}

.active,
.demo:hover {
  opacity: 1;
}
<meta name="viewport" content="width=device-width, initial-scale=1">
<h2 style="text-align:center">Slideshow Gallery</h2>

<div class="container" >
  <div class="mySlides">
    <img src="https://www.w3schools.com/howto/img_woods_wide.jpg" style="width:100%">
  </div>

  <div class="mySlides">
    <img src="https://www.w3schools.com/howto/img_5terre_wide.jpg" style="width:100%">
  </div>

  <div class="mySlides">
    <img src="https://www.w3schools.com/howto/img_mountains_wide.jpg" style="width:100%">
  </div>

  <br>

  <div class="row">
    <div class="column">
      <img class="demo cursor" src="https://www.w3schools.com/howto/img_woods.jpg" style="width:100%" onclick="currentSlide(1)" alt="The Woods">
    </div>
    <div class="column">
      <img class="demo cursor" src="https://www.w3schools.com/howto/img_5terre.jpg" style="width:100%" onclick="currentSlide(2)" alt="Cinque Terre">
    </div>
    <div class="column">
      <img class="demo cursor" src="https://www.w3schools.com/howto/img_mountains.jpg" style="width:100%" onclick="currentSlide(3)" alt="Mountains and fjords">
    </div>
  </div>
</div>

答案 1 :(得分:0)

您可以为图像设置固定的高度/宽度,但是有图像倾斜的风险。我在下面设置了一个固定的高度,图像将显示在窗口内,并且拇指的高度都相同,但是最好是从具有相似尺寸的图像开始,并使用%或垂直高度(vh ),以根据需要缩小图像的大小。

希望这会有所帮助

var slideIndex = 1;
showDivs(slideIndex);

function plusDivs(n) {
  showDivs(slideIndex += n);
}

function currentDiv(n) {
  showDivs(slideIndex = n);
}

function showDivs(n) {
  var i;
  var x = document.getElementsByClassName("mySlides");
  var dots = document.getElementsByClassName("demo");
  if (n > x.length) {
    slideIndex = 1
  }
  if (n < 1) {
    slideIndex = x.length
  }
  for (i = 0; i < x.length; i++) {
    x[i].style.display = "none";
  }
  for (i = 0; i < dots.length; i++) {
    dots[i].className = dots[i].className.replace(" w3-opacity-off", "");
  }
  x[slideIndex - 1].style.display = "block";
  dots[slideIndex - 1].className += " w3-opacity-off";
}
body {
  padding: 0;
  width:900px;
  max-height:100%;
  overflow-y:hidden;
}

.w3-content {
  max-width:600px;
  max-height: 50vh!important;
  margin:0 auto;
}

.mySlides {
  display: none;
  width: 100%; 
  height:450px;
}

.demo {
  cursor: pointer;
  height:150px;
}
<link href="https://www.w3schools.com/w3css/4/w3.css" rel="stylesheet" />

<body>
  <div class="w3-content">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2018/09/07/17/50/fruit-3661159_960_720.jpg">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2016/10/11/12/37/piano-keys-1731467_960_720.jpg">
    <img class="mySlides" src="https://cdn.pixabay.com/photo/2017/11/14/18/31/mushroom-2949539_960_720.jpg">

    <div class="w3-row-padding w3-section">
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2018/09/07/17/50/fruit-3661159_960_720.jpg" style="width:100%" onclick="currentDiv(1)">
      </div>
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2016/10/11/12/37/piano-keys-1731467_960_720.jpg" style="width:100%" onclick="currentDiv(2)">
      </div>
      <div class="w3-col s4">
        <img class="demo w3-opacity w3-hover-opacity-off" src="https://cdn.pixabay.com/photo/2017/11/14/18/31/mushroom-2949539_960_720.jpg" style="width:100%" onclick="currentDiv(3)">
      </div>
    </div>
  </div>
</body>