<style>
.box {
width: 200px;
height: 100px;
margin: 10px;
border: 3px solid black;
}
.input-check ~ .box {
background: #fff000
}
</style>
아래 내부 스타일링 방식의 스니펫을 보면, .input-check
와 .box
라는 selector가 물결 표시를 사이에 두고 연결되어 있으며, 배경이 노란색으로 지정되어 있다.
두 selector들의 상관관계는 다음과 같다.
<body>
<input type="checkbox" class="input-check">
<div class="container">
<div class="box">BOX</div>
</div>
<div class="box">BOX</div>
<div class="box">BOX</div>
</body>
위 스니펫에서 의미하는 바는 input-check 클래스의 직접적인 하위에 존재하는 box 클래스가 있다는 것이다. 단, container라는 클래스로 한번 더 묶여있는 box 클래스는 동일한 부모를 둔 형제 요소가 아니므로, 해당 스타일링이 적용되지 않아 다음과 같은 결과가 나타나게 된다.
<style>
.input-check + .box {
background: #fff000
}
</style>
위와 같이 두 가지 selector 사이에 해당 기호를 사용할 경우,
.input-check
바로 다음에 .box
selector가 나올 때에만 해당 selector에 스타일링이 적용된다.
<body>
<input type="checkbox" class="input-check">
<div class="container">
<div class="box">BOX</div>
</div>
<div class="box">BOX</div>
<div class="box">BOX</div>
</body>
만약 위 구조에 스타일링을 적용시켜 보면, .ìnput-check
다음에는 .container
가 오기 때문에 아무런 스타일링이 적용되지 않는다.
.input-check:checked ~ . box {
background: #fff000;
}
.jejumap-check {
position: absolute;
top: 30%;
left: 30%;
opacity: 0;
}
%
등을 통해 전체 이미지 대비 비율로 설정하면 화면이 늘어나도 오류가 생기지 않음이미지 스프라이트(image sprite): 여러 개의 이미지를 하나의 이미지로 합쳐서 관리하는 이미지