图像旋转木马消失的箭头

时间:2017-04-18 18:44:45

标签: html css

我在下面的代码中使用了html和css的图片轮播。我怎样才能这样做,只有当你的鼠标悬停在旋转木马上时才会出现左右箭头,当它没有时,箭头会消失。什么都有帮助,谢谢。



.pic{
  width:100%;
  height:100%;
}
.carousel {
    border-style:solid;
    border-width:1px;
    border-color:rgba(0, 0, 0, 0.05);
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1);
    widht:100%;
    height:290px;
  border-width:3px;
  border-radius:2px;
  border-color:#FCFCFC;
}

.carousel-inner {
    position: relative;
    overflow: hidden;
    width: 100%;
    height:290px;
}

.carousel-open:checked + .carousel-item {
    position: absolute;
    opacity: 100;
    background-color:black;
    width:100%;
    height:290px;
}

.carousel-item {
    position: absolute;
    opacity: 0;
    text-align:center;
}

.carousel-control {
    border-radius: 10px;
    border: 1.5px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    color:rgba(255, 255, 255, 0.9);
    cursor: pointer;
    display: none;
    font-size: 30px;
    height: 40px;
    line-height: 25px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    cursor: pointer;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-align: center;
    width: 30px;
    height:30px;
    z-index: 10;
}

.carousel-control.prev {
    left: 2%;
}

.carousel-control.next {
    right: 2%;
}

.carousel-control:hover {
    color: #4F94CD;
    background-color:rgba(255, 255, 255, 0.9);
}
 .carousel-control:hover:after {
  content: '';
  position: absolute;
  border-radius:50%;
  background:transparent;
  border: 1.5px solid rgba(255, 255, 255, 0.2);
  background:rgba(255, 255, 255, 0.2);
  top: -5px;
  left: -6px;
  right: -5px;
  bottom: -6px;
  z-index: -5;
}

#carousel-1:checked ~ .control-1,
#carousel-2:checked ~ .control-2,
#carousel-3:checked ~ .control-3{
    display: block;
}

.carousel-indicators {
    margin: 0;
    padding: 2px;
    position: absolute;
    bottom: -4.5px;
    left: 0;
    right: 0;
    text-align: center;
}

.carousel-indicators li {
    display: inline-block;
    margin: 0 5px;
    position: relative; /*You are required to do this*/
}
.carousel-indicators .carousel-preview {
    position: absolute;
    width: 108px;
    top: -0;
    left: 50%;
    margin-left: -52px;
    height:0px;
    transition:0.5s all;
    overflow: hidden;
}
.carousel-indicators .carousel-preview img {
    max-width:100px;
    max-height:50px;
    padding: 2px;
    background-color: white;
}
.carousel-indicators li:hover .carousel-preview {
    height:54px;
    top:-50px;
}
.carousel-bullet {
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    font-size: 20px;
}

.carousel-bullet:hover {
    color: rgba(255, 255, 255, 0.9);
}

.HRConnectImage
{width:375px;
padding-top:50px;
display:inline-block;}

#carousel-1:checked ~ .control-1 ~ .carousel-indicators li:nth-child(1) .carousel-bullet,
#carousel-2:checked ~ .control-2 ~ .carousel-indicators li:nth-child(2) .carousel-bullet,
#carousel-3:checked ~ .control-3 ~ .carousel-indicators li:nth-child(3) .carousel-bullet{
    color: rgba(255, 255, 255, 0.9);
}

#title {
    width: 100%;
    position: absolute;
    padding: 0px;
    margin: 0px auto;
    text-align: center;
    font-size: 27px;
    color: rgba(255, 255, 255, 1);
    font-family: 'Open Sans', sans-serif;
    z-index: 9999;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.33), -1px 0px 2px rgba(255, 255, 255, 0);
}

#p
{
text-align:center;
font-weight:bold;}

<div class="carousel"> 
   <div class="carousel-inner"> 
      <input name="carousel" class="carousel-open" id="carousel-1" aria-hidden="true" type="radio" hidden="true" Checked/> 
      <div class="carousel-item"> 
<img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/O%20Gibraltar.PNG">
      </div> 
      <input name="carousel" class="carousel-open" id="carousel-2" aria-hidden="true" type="radio" hidden="true"/> 
      <div class="carousel-item"> 
  <img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/ADC.PNG">
      </div> 
      <input name="carousel" class="carousel-open" id="carousel-3" aria-hidden="true" type="radio" hidden="true"/> 
      <div class="carousel-item"> 
<img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/CUL.PNG">
      </div>
      <label class="carousel-control prev control-1" for="carousel-3">‹</label>
      <label class="carousel-control next control-1" for="carousel-2">›</label>
      <label class="carousel-control prev control-2" for="carousel-1">‹</label>
      <label class="carousel-control next control-2" for="carousel-3">›</label>
      <label class="carousel-control prev control-3" for="carousel-2">‹</label>
      <label class="carousel-control next control-3" for="carousel-1">›</label>

      <ol class="carousel-indicators"> 
         <li> 
            <label class="carousel-bullet" for="carousel-1">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb1.jpg" />
            </div>
         </li> 
         <li> 
            <label class="carousel-bullet" for="carousel-2">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb3.jpg" />
            </div>
         <li> 
            <label class="carousel-bullet" for="carousel-3">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb2.jpg" />
            </div>
         </li> 

      </ol> 
   </div> 
</div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:2)

设置.carousel-control { opacity: 0; }并通过.carousel:hover .carousel-control { opacity: 1; }

启用鼠标悬停

&#13;
&#13;
.pic{
  width:100%;
  height:100%;
}
.carousel {
    border-style:solid;
    border-width:1px;
    border-color:rgba(0, 0, 0, 0.05);
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1);
    widht:100%;
    height:290px;
  border-width:3px;
  border-radius:2px;
  border-color:#FCFCFC;
}

.carousel-inner {
    position: relative;
    overflow: hidden;
    width: 100%;
    height:290px;
}

.carousel-open:checked + .carousel-item {
    position: absolute;
    opacity: 100;
    background-color:black;
    width:100%;
    height:290px;
}

.carousel-item {
    position: absolute;
    opacity: 0;
    text-align:center;
}

.carousel-control {
    border-radius: 10px;
    border: 1.5px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    color:rgba(255, 255, 255, 0.9);
    cursor: pointer;
    display: none;
    font-size: 30px;
    height: 40px;
    line-height: 25px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    cursor: pointer;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-align: center;
    width: 30px;
    height:30px;
    z-index: 10;
}

.carousel-control.prev {
    left: 2%;
}

.carousel-control.next {
    right: 2%;
}

.carousel-control:hover {
    color: #4F94CD;
    background-color:rgba(255, 255, 255, 0.9);
}
 .carousel-control:hover:after {
  content: '';
  position: absolute;
  border-radius:50%;
  background:transparent;
  border: 1.5px solid rgba(255, 255, 255, 0.2);
  background:rgba(255, 255, 255, 0.2);
  top: -5px;
  left: -6px;
  right: -5px;
  bottom: -6px;
  z-index: -5;
}

#carousel-1:checked ~ .control-1,
#carousel-2:checked ~ .control-2,
#carousel-3:checked ~ .control-3{
    display: block;
}

.carousel-indicators {
    margin: 0;
    padding: 2px;
    position: absolute;
    bottom: -4.5px;
    left: 0;
    right: 0;
    text-align: center;
}

.carousel-indicators li {
    display: inline-block;
    margin: 0 5px;
    position: relative; /*You are required to do this*/
}
.carousel-indicators .carousel-preview {
    position: absolute;
    width: 108px;
    top: -0;
    left: 50%;
    margin-left: -52px;
    height:0px;
    transition:0.5s all;
    overflow: hidden;
}
.carousel-indicators .carousel-preview img {
    max-width:100px;
    max-height:50px;
    padding: 2px;
    background-color: white;
}
.carousel-indicators li:hover .carousel-preview {
    height:54px;
    top:-50px;
}
.carousel-bullet {
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    font-size: 20px;
}

.carousel-bullet:hover {
    color: rgba(255, 255, 255, 0.9);
}

.HRConnectImage
{width:375px;
padding-top:50px;
display:inline-block;}

#carousel-1:checked ~ .control-1 ~ .carousel-indicators li:nth-child(1) .carousel-bullet,
#carousel-2:checked ~ .control-2 ~ .carousel-indicators li:nth-child(2) .carousel-bullet,
#carousel-3:checked ~ .control-3 ~ .carousel-indicators li:nth-child(3) .carousel-bullet{
    color: rgba(255, 255, 255, 0.9);
}

#title {
    width: 100%;
    position: absolute;
    padding: 0px;
    margin: 0px auto;
    text-align: center;
    font-size: 27px;
    color: rgba(255, 255, 255, 1);
    font-family: 'Open Sans', sans-serif;
    z-index: 9999;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.33), -1px 0px 2px rgba(255, 255, 255, 0);
}

#p
{
text-align:center;
font-weight:bold;}

.carousel-control { opacity: 0; }
.carousel:hover .carousel-control { opacity: 1; }
&#13;
<div class="carousel"> 
   <div class="carousel-inner"> 
      <input name="carousel" class="carousel-open" id="carousel-1" aria-hidden="true" type="radio" hidden="true" Checked/> 
      <div class="carousel-item"> 
<img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/O%20Gibraltar.PNG">
      </div> 
      <input name="carousel" class="carousel-open" id="carousel-2" aria-hidden="true" type="radio" hidden="true"/> 
      <div class="carousel-item"> 
  <img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/ADC.PNG">
      </div> 
      <input name="carousel" class="carousel-open" id="carousel-3" aria-hidden="true" type="radio" hidden="true"/> 
      <div class="carousel-item"> 
<img class="pic" src="http://wearenorthwest.northwest.ca/departments/humanresources/test/PublishingImages/CUL.PNG">
      </div>
      <label class="carousel-control prev control-1" for="carousel-3">‹</label>
      <label class="carousel-control next control-1" for="carousel-2">›</label>
      <label class="carousel-control prev control-2" for="carousel-1">‹</label>
      <label class="carousel-control next control-2" for="carousel-3">›</label>
      <label class="carousel-control prev control-3" for="carousel-2">‹</label>
      <label class="carousel-control next control-3" for="carousel-1">›</label>

      <ol class="carousel-indicators"> 
         <li> 
            <label class="carousel-bullet" for="carousel-1">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb1.jpg" />
            </div>
         </li> 
         <li> 
            <label class="carousel-bullet" for="carousel-2">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb3.jpg" />
            </div>
         <li> 
            <label class="carousel-bullet" for="carousel-3">●</label> 
            <div class="carousel-preview">
              <img src="http://www.menucool.com/slider/jsImgSlider/images/thumb2.jpg" />
            </div>
         </li> 

      </ol> 
   </div> 
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

使箭头不透明:0;然后悬停,不透明度:1;

<div class="thing">
  <div class="arrow">Arrow</div>
</div>

...

.thing {
  border: 1px solid red;
}

.thing .arrow {
  opacity: 0;
  transition: .3s;
}

.thing:hover .arrow {
  opacity: 1;
}

尝试向后阅读CSS选择器...... “任何箭头 - 在一个悬停的'东西'里面,做这个......”

https://jsfiddle.net/sheriffderek/0g6uqzgp/