我想创建一个HTML幻灯片与css只不使用javascript。
这是我的尝试,我如何改进它?https://codepen.io/fearless23/pen/GELXma
我只是想创建一个基本的滑块只使用CSS只。不想任何Javascript
HTML语言
<div class="slides-container">
<div>
<input id="slide1" type="radio" name="login-slide" class="hidden" checked>
<div class="slide">Slide1</div>
<label for="slide1" class="slide-dot"></label>
</div>
<div>
<input id="slide2" type="radio" name="login-slide" class="hidden">
<div class="slide">Slide2 </div>
<label for="slide2" class="slide-dot" style="left: 12.52em;"></label>
</div>
<div>
<input id="slide3" type="radio" name="login-slide" class="hidden">
<div class="slide">Slide3 </div>
<label for="slide3" class="slide-dot" style="left:14.52em;"></label>
</div>
</div>
CSS
*, *:after, *:before {
box-sizing: border-box;
margin: 0;
padding: 0;
}
.slides-container {
position: relative;
display: flex;
width: 100%;
height: 100vh;
}
.slide {
position: absolute;
visibility: hidden;
opacity: 0;
width: 100%;
height: 100%;
padding: 2em 2em 5em;
color: white;
background: black;
}
.slides-container input[type="radio"]:checked + .slide {
visibility: visible;
opacity: 1;
}
.hidden {
position: absolute;
opacity: 0;
hieght: 0;
overflow: hidden;
}
label.slide-dot {
position: absolute;
z-index: 100;
bottom: 2em;
left: 10.52em;
width: 1em;
height: 1em;
background: #fff;
border-radius: 50%;
cursor: pointer;
}
.slides-container input[type="radio"]:checked ~ label {
background: #2ca58d;
}
注意:格式化原始问题,以便我可以在StackOverflow上再次提问:(
1条答案
按热度按时间rkue9o1l1#
你真的应该读一下如何使用HTML和CSS。我推荐你阅读w3schools.com上关于html和css的解释。在这种情况下,你想知道的主要是列表和链接(html方面)以及你可以用边框做的有趣的事情(css方面)。例如,为了制作css圆圈,大卫沃尔什有一个nice blog-entry。
我也不得不同意利斯特先生的看法,即你说的两点确实是分开的问题.实际上,它们是不同的技术:第一个是HTML/CSS问题,第二个是javascript问题。
一个友好的建议:不要一开始就想要所有的东西。这会让人沮丧(我知道!)。让自己适应HTML的工作方式,特别是链接页面和内容。一旦你掌握了窍门,就试试javascript(imho jQuery是非常容易访问的,比如:快速产生结果)。提示:您希望试验jQuery的
display: none
CSS属性和div#id.show()
函数。祝你好运,玩得开心(这就是一切应该做的)!