클릭하면 이미지가 바뀌는 탭 메뉴 콘텐츠 만들기(자동아님)
다중선택이 아니기 때문에 input
의 type이 checkbox가 아니고 radio로 넣어야한다.
radio는 동일한 name을 반드시 가지고 있어야한다.
<div class="tab-inner">
<input type="radio" name="tabmenu" id="tab1" checked>
<input type="radio" name="tabmenu" id="tab2">
<input type="radio" name="tabmenu" id="tab3">
<div class="content slide1">
<img src="./images/slide-01.jpg" alt="shop">
</div>
<div class="content slide2">
<img src="./images/slide-02.jpg" alt="shop">
</div>
<div class="content slide3">
<img src="./images/slide-03.jpg" alt="shop">
</div>
<div class="btn">
<label for="tab1"></label>
<label for="tab2"></label>
<label for="tab3"></label>
</div>
</div>/* Google Web Font */
@import url('https://fonts.googleapis.com/css?family=Raleway&display=swap');
/* Fontawesome 4.7 */
@import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
body {
font-family: 'Raleway', sans-serif;
line-height: 1.5em;
margin: 0;
font-weight: 300;
color: #222;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
a {
text-decoration: none;
}
.tab-inner {
width: 300px;
height: 350px;
position: relative;
}
input[name=tabmenu] {
display: none;
}
.content {
display: none;
}
.btn {
position: absolute;
text-align: center;
width: 100%;
bottom: 10px;
}
.btn label{
width: 15px;
height: 15px;
display: inline-block;
background-color: lightgray;
border-radius: 50%;
cursor: pointer;
}
input[id=tab1]:checked ~ .slide1 {
display: block;
}
input[id=tab2]:checked ~ .slide2 {
display: block;
}
input[id=tab3]:checked ~ .slide3 {
display: block;
}
input[id=tab1]:checked ~ .btn label[for=tab1]{
background-color: crimson;
}
input[id=tab2]:checked ~ .btn label[for=tab2]{
background-color: crimson;
}
input[id=tab3]:checked ~ .btn label[for=tab3]{
background-color: crimson;
}s
/* Google Web Font */
@import url('https://fonts.googleapis.com/css?family=Raleway&display=swap');
/* Fontawesome 4.7 */
@import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
body {
font-family: 'Raleway', sans-serif;
line-height: 1.5em;
margin: 0;
font-weight: 300;
color: #222;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
a {
text-decoration: none;
}
.tab-inner {
width: 300px;
height: 350px;
position: relative;
}
input[name=tabmenu] {
display: none;
}
.content {
display: none;
}
.btn {
position: absolute;
text-align: center;
width: 100%;
bottom: 10px;
}
.btn label{
width: 15px;
height: 15px;
display: inline-block;
background-color: lightgray;
border-radius: 50%;
cursor: pointer;
}
input[id=tab1]:checked ~ .slide1 {
display: block;
}
input[id=tab2]:checked ~ .slide2 {
display: block;
}
input[id=tab3]:checked ~ .slide3 {
display: block;
}
input[id=tab1]:checked ~ .btn label[for=tab1]{
background-color: crimson;
}
input[id=tab2]:checked ~ .btn label[for=tab2]{
background-color: crimson;
}
input[id=tab3]:checked ~ .btn label[for=tab3]{
background-color: crimson;
}s