• 회원가입
  • 로그인
  • 구글아이디로 로그인

[selector] CSS - element+element 인접선택자 ★★ - 바로 뒤 인접형제요소 (요소선택자, IE7) + 스티키메뉴 (Sticky Menu) ※ 스크롤 상단고정메뉴 ※ 플러스기호선택자

목차
  1. element+element 예제 - h1태그 바로 뒤 p요소만 선택
  2. element+element 정의
  3. element+element 구문
  4. element+element 예제 - div태그 바로 뒤 p요소만 선택
  5. element+element 예제 - 스크롤 상단고정메뉴 (= Sticky Menu : 스티키메뉴)
  6. element+element 예제 - 인접선택자(+) 중접 적용
  7. element+element 예제 - 지정요소 바로 앞의 형제요소 선택

 

element+element 예제 - h1태그 바로 뒤 p요소만 선택

   
<style>
h1 + p {color: red;}
</style>
 
<p>홈페이지 무료 제작 강의</p>
<h1>홈짱닷컴 (homzzang.com)</h1>
<p>HTML 무료 강의</p>
<p>CSS 무료 강의</p>
<div>
   <p>JAVA 무료 강의</p>
</div>
 

element+element 정의


지정요소 바로 뒤 인접요소만 선택.

 


1. 
  • A + B 라고 할 경우, A 요소와 동위로 바로 뒤 인접하는 B 요소 선택. ※ (인접선택자 = 이웃선택자) 라고도 함.
  • :has(+ 지정선택자) - 지정선택자 바로 앞의 형제요소 선택.
 
2.
CSS버전: CSS2

3.

IE7 이상 주요 최신브라우저 지원.


4. MDN Next-sibling combinator (+) 선택자 예제보기
https://developer.mozilla.org/en-US/docs/Web/CSS/Next-sibling_combinator
 

 

element+element 구문

 

element + element{ css 선언; }

 

PS. + 기호 앞뒤 공백 유무 상관없음.

 

element+element 예제 - div태그 바로 뒤 p요소만 선택

 
<style>
div+p {color:red;}
</style>

<p>글 내용1</p>
<div>
    <p>글 내용2</p>
    <blockquote><p>글 인용</p></blockquote>
</div>
<p>글 내용3</p>
 
 

element+element 예제 - 스크롤 상단고정메뉴 (= Sticky Menu : 스티키메뉴)


<!DOCTYPE html>

<html>

<head>

<meta name="viewport" content="width=device-width, initial-scale=1">

<style>

body {

  margin: 0;

  font-size: 28px;

  font-family: Arial, Helvetica, sans-serif;

}


.header {

  background-color: #f1f1f1;

  padding: 30px;

  text-align: center;

}


#navbar {

  overflow: hidden;

  background-color: Tomato;

}


#navbar a {

  float: left;

  display: block;

  color: #f2f2f2;

  text-align: center;

  padding: 14px 16px;

  text-decoration: none;

  font-size: 17px;

}


#navbar a:hover {

  background-color: #ddd;

  color: black;

}


#navbar a.active {

  background-color: #4CAF50;

  color: white;

}


.content {

  padding: 16px;

}


.sticky {

  position: fixed;

  top: 0;

  width: 100%;

}


.sticky + .content {

  padding-top: 60px;

}

</style>

</head>

<body>


<div class="header">

  <h2>홈짱닷컴</h2>

  <p>Homzzang.com</p>

</div>


<div id="navbar">

  <a class="active" href="javascript:void(0)">Home</a>

  <a href="javascript:void(0)">HTML</a>

  <a href="javascript:void(0)">CSS</a>

  <a href="javascript:void(0)">JS</a>

</div>


<div class="content">

  <h3>홈페이지 제작관리 + 서버관리</h3>

  <p id='demo'></demo>

</div>


<script>

window.onscroll = function() {homzzang()};


var navbar = document.getElementById("navbar");

var sticky = navbar.offsetTop;


function homzzang() {

  if (window.pageYOffset >= sticky) {

    navbar.classList.add("sticky")

  } else {

    navbar.classList.remove("sticky");

  }

}

  

 var text = "";

 var i;

 for (i = 1; i <= 30; i++) {

    text += i + ". 홈짱닷컴에 놀러오세요<br>";

    document.getElementById("demo").innerHTML = text;

 }

</script>


</body>

</html>


결과보기

관련글: BS affix , http://stickyjs.com/

 

element+element 예제 - 인접선택자(+) 중접 적용

 

<style>

div+p {color:red;}

div+p+p {color:blue;}

div+p+p+p {color:green;}

</style>

 

<div>홈짱닷컴 Homzzang.com</div>

<p>홈짱닷컴 Homzzang.com</p>

<p>홈짱닷컴 Homzzang.com</p>

<p>홈짱닷컴 Homzzang.com</p>

<p>홈짱닷컴 Homzzang.com</p>

 

결과보기

 

element+element 예제 - 지정요소 바로 앞의 형제요소 선택

(예) .hz 클래스 갖는 요소 바로 앞의 형제요소 선택.

<style>

:has(+ .hz) {color: red;}

.hz {color:green;}

.hz+div {color:blue;}

</style>

 

<div>홈짱닷컴</div>

<div class="hz">Homzzang.com</div>

<div>홈페이지 제작관리</div>

 

결과보기 



분류 제목
text CSS - direction 속성 - 텍스트방향 (= 텍스트진행방향 = direction속성 = 디렉션속성)…
box CSS - padding-top 속성 - 안쪽여백상단 (= padding-top속성 = 패딩탑속성 = 패딩톱…
box CSS - margin-bottom 속성 - 하단바깥여백 (= 하단마진, 아래쪽마진 = margin-bott…
gradient CSS - Gradient (그레이디언트 = 그라디언트) 종류 - (색번짐변화=색변화) : IE 10
selector CSS - [attribute] 속성선택자 - 특정 속성 보유 요소 (IE7) ※ 여러 속성 보유 선택자
box CSS - padding-left 속성 - 안쪽여백좌측 (= padding-left속성 = 패딩레프트속성)
selector CSS - [attribute=value] 속성선택자 - 지정속성값보유요소 선택 (IE7) ※ 특정 (속성/…
background CSS - background-repeat 속성 ★ - 배경이미지 반복 (= 배경반복 = background…
text CSS - word-break 속성 ★ - 한중일 외의 언어 (단어기준/글자기준) 줄바꿈규칙 지정 (= 줄…
box CSS - margin-right 속성 - 바깥여백우측 (= margin-right속성 = 마진라이트속성)
func CSS - var() 함수 ★★ - 사용자정의 속성/속성값 변수 호출 (= var함수 = 바함수) ※ :r…
selector CSS - element element 자손선택자 ★ - 자손요소 (요소선택자)
animation CSS - @keyframes 구문 - 애니메이션 코드 사용 선언 (= 애니사용 = @keyframes속성 …
table CSS - caption-side 속성 - 테이블표제위치 (= caption-side속성 = 캡션사이드속성)
box CSS - margin-left 속성 - 요소의 왼쪽 바깥 여백 (= 바깥 좌측 여백 = 좌측마진 = 왼쪽마…
text CSS - unicode-bidi 속성 - 텍스트글자방향 (= unicode-bidi속성 = 유니코드비디속성…
responsive CSS - @media 구문 - 미디어쿼리 이용한 반응형 스타일 구현 (= media쿼리) ※ IE/Edge…
css CSS - 선택자 명시도 계산 - (CSS 적용 선택자우선순위 판별 = CSS적용순서 체크)
text CSS - text-decoration-style 속성 - 텍스트라인모양 (굵은선, 파선, 점선, 물결선 등…
border CSS - border-image 속성 - 테두리이미지 (= border-image속성 = 보더이미지속성, …
20/27
목록
찾아주셔서 감사합니다. Since 2012