CSS 학습 2: 선택기
8079 단어 css
h1 {color:red;}/* */
h2 {font:normal 12px/16px "Courier New",Arial;}/* css , font “/” */
h3,p {background-color:#EEE;}/* */
2. 와일드카드 선택기는 페이지의 모든 요소에 스타일을 추가합니다. 예를 들어 다음과 같습니다.
* {color:blue;}/* , color blue, */
*.p {font-weight:bold;}/* , p , (*) , .p */
3. 유형 선택기: 쓸데없는 말 말고 여러 종류의 선택기를 말해 보세요. 예를 들면:
다음과 같은 HTML 코드가 있습니다.
<p class="p">This is a paragraph</p><!-- -->
<div class="p">This is a div element</div><!-- -->
<p class="urgent warning">This is a paragraph</p><!-- , class , -->
<p class="urgent warning help">Those words's background-color is red too in all browser!</p><!-- ,.waring.urgent p -->
<p class=" help ie6">Those words's background-color is red in browser ie6!</p><!-- , help , IE6 -->
<p class="help">Those words's background-color is red in browser ie6!</p><!-- , help , IE6 -->
<p>This is a paragraph<span class="warning"> But this is a span element</span></p>
CSS 스타일은 다음과 같습니다.
p.p {font-style:italic;}/* , p */
.waring {font-weight:bold;}
.urgent {font-style:italic;}
.warning.urgent {background-color:silver;}/* , waring urgent , class */
p.warning.urgent.help {background-color:red;}/* , waring,urgent help p , IE6 class help p */
IE6이 아닌 경우 CSS에warning.urgent.help와 같은 선택기는 Waring,urgent, help 세 가지 종류의 HTML 요소만 일치하고, HTML에서class="urgent Warning help"같은 선택기는 CSS의 다양한 스타일과 일치할 수 있습니다.IE6에서는 다릅니다.
4. ID 선택기: 클래스 선택기보다 ID 선택기는 그리 복잡하지 않습니다. ID 속성은 빈칸으로 구분된 단어 목록을 허용하지 않습니다. 예를 들어 다음과 같은 표기법은 옳지 않습니다.
<div id="div1 div2">...</div><!-- -->
CSS가 어떻게 쓰든지 간에 스타일은 무효입니다.그러나 ID 선택자와 클래스 선택자는 다음과 같이 함께 사용할 수 있습니다.
#div.div {color:red;}/* ID , , */
일치 ID가 div이고 div 클래스에 속하는 HTML 요소가 선언됩니다.
또한, ID 선택자를 사용한 이상 한 요소 중 한 요소에만 ID를 사용할 수 있습니다. 예를 들어 아래의 표기법은 옳지 않습니다.
<h1 id="important">important</h1>
<em id="important">important</em>
<ul id="important">important</ul>
이 세 가지 요소는 같은 ID를 가지고 있어 같은 문서에 동시에 나타날 수 없으며 이는 ID의 유일성을 나타낸다.
5. 속성 선택자: 현재 유감스럽게도 속성 선택기는 IE6에 의해 식별되지 않았고 IE7 및 이상의 IE 시리즈는 대부분의 CSS를 지원한다.1 속성 선택기.
간단한 속성 선택기 인스턴스:
a[href] {color:yellow;}/* , href a */
*[title] {font-weight:bold;}/* , title */
a[href][title] {color:red;}/* , title href a */
다음은 특정 속성 값에 따른 선택입니다.
a[href="../chemdemo/"] {color:yellow;}/* , “../chemdemo/” a */
p[class="urgent warning"] {font-weight:bold;}/* , , class="urgent" */
상례에서 p[class="urgent warning"]는class="urgent warning"류의 p 요소와 엄격하게 일치하고urgent와warning의 순서는 뒤바뀌지 않는다.
다음은 부분 속성 값에 따라 선택됩니다.class="urgent warning"클래스에 대해 CSS는 이렇게 쓸 수 있습니다.
p[class~="warning"] {color:red;}/* ,“~” p */
[class~="urgent"] {color:grey;}/* ,“~” */
물론 class 속성에만 국한된 것이 아니라 모든 속성은 속성 선택자를 사용할 수 있습니다. 예를 들어 선택기img[title~="Figure"]는 제목 값이 "빈칸과 Figure"가 포함된 이미지와 일치합니다.
다음과 같은 하위 문자열 일치 속성 선택기도 있습니다.
[class^="cl"] {}/* ,“^=” class cl */
[class$="dy"] {}/* ,“$=” class dy */
[class*="ou"] {}/* ,“*=” class ou */
마지막 속성 선택기는 다음과 같은 특정 속성 선택 유형입니다.
*[lang|="en"] {}/* lang en en- */
img[src|="figure"] {}/* “figure-” */
6. HTML 태그의 중첩 관계에 따라 요소를 선택합니다.
다음 중 하나는 다음 요소를 선택하는 것입니다.
h4 em {}/* h4 em */
ul ol li em {}/* , */
하나는 하위 요소를 선택하는 것입니다.
HTML 코드가 포함됩니다.
<h2>This is <strong>very</strong> important.</h2><!-- strong h2 、 -->
<h2>This is <em>really <strong>very</strong></em> important.</h2><!-- strong h2 -->
그러면 다음 CSS는 앞의 "very"를 굵은 글꼴로 표시합니다.
h2 > strong {color:red;}/* h2 strong */
또 다른 하나는 인접 형제 요소를 선택하는 것입니다. 모든 후손 요소를 선택하지 않으려면 인접 형제 요소를 선택하는 방법으로 선택 범위를 좁힐 수 있습니다.
h2 + p {}/* h2 p ( p ), ( )*/
html > body tabke + ul {}/* */
참고: IE6은 하위 선택기와 인접 선택기를 지원하지 않습니다.
7. 위류:
링크에 사용되는 위조류는':link'와':visited'두 가지가 있는데 CSS를 아는 사람들은 모두 낯설지 않을 거라고 믿습니다. 여기서 예를 들지 않겠습니다.
동적 위조: CSS2.1에는':focus',':hover',':active'세 가지가 포함되어 있으며 웹 페이지에서 자주 사용하는 방식은 정적 위조류와 결합하는 것이다.
a:link {}
a:visited {}
a:hover {}
a:active {}
위류의 순서는 매우 중요하다. 개인의 기억 방법은 러브-hate(사랑과 증오)이다.
동적 위조 클래스는 다음과 같은 모든 요소에 적용될 수 있습니다.
input:focus {background:#DDD;}/* */
*:hover {background:gray;}/* body */
요소의 첫 번째 하위 요소를 선택하려면: first-child 정적 위조 클래스를 사용합니다.
CSS 스타일:
p:first-child,li:first-child {background:#CCC;}
HTML 코드:
<div>
<p>p1</p><!-- -->
<p>p2</p>
<ul>
<li>1</li><!-- -->
<li>2</li>
<li>3</li>
</ul>
</div>
참고: IE6는 ":first-child"정적 위조를 지원하지 않습니다.
다음은 위류를 결합하는 용법에 관한 것이다.
a:link:hover {color:red;}/* , a:hover:link,IE6 :hover :link */
a:visited:hover {color:maroon;}/* ,IE6 :hover :link */
위의 스타일은 마우스 포인터가 액세스되지 않은 링크에 있을 때 빨간색, 액세스한 링크에 있을 때 자홍색으로 표시되도록 합니다.
언어에 따라 선택할 수도 있습니다. 즉: lang을 클래스로 사용합니다.
*:lang(fr) {font-style:italic;}/* */
더 많은 언어 코드는 CSS 매뉴얼을 참조하십시오.
또한: 퍼스트,: left:, right 세 가지 위조 클래스가 있습니다. @page 규칙에만 사용됩니다. 예를 들어:
@page :right { margin: 4cm }/* */
@page :first {}/* */
8. 위조 요소: CSS2.1에는 first-letter,:first-line,:before,:after 네 가지 위조 요소, 실례:
p {width:500px;}/* :first-line , width , */
p:first-line {color:red;}/* p ,p */
p:first-letter {font-size:2em;}
h2:before {content:"{";color:green;}/* h2 “{” , */
h2:after {content:"}";color:green;}/* h2 “}” , */
h3:after {content:"END";color:red;}/* IE6 ,h3 “END” */
span:before {content:"s";color:red;}/* IE6 ,span “s” */
span:first-letter {color:green;font-size:40px;}/* span , */
span {position:absolute;}/* span , , 40px */
결론은 다음과 같습니다.
1) IE6 지원:first-line과:first-letter 위조원소, 지원하지 않음:after와:before 위조원소;2):first-line과:first-letter는 블록급 요소에만 사용할 수 있고:after와:before는 블록급과 행내 요소에 적합하다.3) 인라인 요소 설정position 속성을 absolute로 설정하거나 디스플레이 속성을 Block으로 설정하면:first-line과:first-letter가 유효합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
장치 너비가 특정 너비보다 크고 특정 너비보다 작을 때 웹 페이지 CSS 스타일을 변경하는 방법은 무엇입니까?장치 너비가 특정 너비보다 크고 특정 너비보다 작을 때 웹 페이지 CSS 스타일을 변경하려면 @media의 미디어 쿼리 구문을 사용한 다음 구문을 작성하여 스타일의 최소 너비를 정의해야 합니다. 적용된 후 and라는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.