:target
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since â¨2015å¹´7æâ©.
:target CSS 伪类表示ä¸ä¸ªå¯ä¸çå
ç´ ï¼ç®æ å
ç´ ï¼ï¼å
¶ id ä¸å½å URL çæ®µå¹é
ã
/* éæ©ä¸ä¸ª ID ä¸å½å URL çæ®µå¹é
çå
ç´ */
:target {
border: 2px solid black;
}
ä¾å¦ï¼ä»¥ä¸ URL å
·æä¸ä¸ªç段ï¼ç± # 符å·è¡¨ç¤ºï¼ï¼æåå为 section2 çå
ç´ ï¼
http://www.example.com/index.html#section2
è¥å½å URL çäºä¸é¢ç URL æ¶ï¼ä»¥ä¸å
ç´ å°è¢« :target éæ©å¨è¢«éä¸ï¼
<section id="section2">Example</section>
è¯æ³
:target {
/* ... */
}
示ä¾
>ä¸ä¸ªç®å½
:target 伪类å¯ç¨äºé«äº®æ¾ç¤ºé¡µé¢ä¸å¯ä»ç®å½ä¸é¾æ¥å°çé¨åã
HTML
<h3>ç®å½</h3>
<ol>
<li><a href="#p1">跳转å°ç¬¬ä¸ä¸ªæ®µè½ï¼</a></li>
<li><a href="#p2">跳转å°ç¬¬äºä¸ªæ®µè½ï¼</a></li>
<li><a href="#nowhere">æ¤é¾æ¥ä¸ä¼è·³è½¬ï¼å ä¸ºç®æ ä¸åå¨ã</a></li>
</ol>
<h3>æçè¶£å³æç« </h3>
<p id="p1">ä½ å¯ä»¥ä½¿ç¨ URL çæ®µå®ä½æ¤<i>段è½</i>ãç¹å»ä¸é¢ç龿¥è¯è¯å§ï¼</p>
<p id="p2">è¿æ¯<i>å¦ä¸ä¸ªæ®µè½</i>ï¼ä¹å¯ä»¥ä»ä¸é¢ç龿¥è®¿é®ãè¿ä¸æ¯å¾æå¿«åï¼</p>
CSS
p:target {
background-color: gold;
}
/* å¨ç®æ å
ç´ ä¸å¢å ä¸ä¸ªä¼ªå
ç´ */
p:target::before {
font: 70% sans-serif;
content: "âº";
color: limegreen;
margin-right: 0.25em;
}
/*å¨ç®æ å
ç´ ä¸ä½¿ç¨ italic æ ·å¼*/
p:target i {
color: red;
}
ç»æ
纯 CSS é«äº®
ä½ å¯ä»¥ä¸ä½¿ç¨ä»»ä½ Javascript 代ç ï¼åªä½¿ç¨ :target 伪类å建ä¸ä¸ªé«äº®æ¡ãè¯¥ææ¯ä¾èµäºåå§åæ¶å°±éèå¨é¡µé¢ä¸ç龿¥å°æå®å
ç´ çéã䏿¦å®ä½ï¼CSS 就伿´æ¹å
¶ display 以便æ¾ç¤ºå®ä»¬ã
夿³¨ï¼ä¸ä¸ªåºäº :target ä¼ªç±»çæ´ä¸ºå®åç纯 CSS é«äº®æ¡å¯ä»¥å¨ GitHubï¼demoï¼ä¸æ¾å°ã
HTML
<ul>
<li><a href="#example1">æå¼ç¤ºä¾ #1</a></li>
<li><a href="#example2">æå¼ç¤ºä¾ #2</a></li>
</ul>
<div class="lightbox" id="example1">
<figure>
<a href="#" class="close"></a>
<figcaption>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec felis enim,
placerat id eleifend eu, semper vel sem.
</figcaption>
</figure>
</div>
<div class="lightbox" id="example2">
<figure>
<a href="#" class="close"></a>
<figcaption>
Cras risus odio, pharetra nec ultricies et, mollis ac augue. Nunc et diam
quis sapien dignissim auctor. Quisque quis neque arcu, nec gravida magna.
</figcaption>
</figure>
</div>
CSS
/* Unopened lightbox */
.lightbox {
display: none;
}
/* Opened lightbox */
.lightbox:target {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
/* Lightbox content */
.lightbox figcaption {
width: 25rem;
position: relative;
padding: 1.5em;
background-color: lightpink;
}
/* Close button */
.lightbox .close {
position: relative;
display: block;
}
.lightbox .close::after {
right: -1rem;
top: -1rem;
width: 2rem;
height: 2rem;
position: absolute;
display: flex;
z-index: 1;
align-items: center;
justify-content: center;
background-color: black;
border-radius: 50%;
color: white;
content: "Ã";
cursor: pointer;
}
/* Lightbox overlay */
.lightbox .close::before {
left: 0;
top: 0;
width: 100%;
height: 100%;
position: fixed;
background-color: rgba(0, 0, 0, 0.7);
content: "";
cursor: default;
}
ç»æ
è§è
| Specification |
|---|
| HTML > # selector-target > |
| Selectors Level 4 > # target-pseudo > |