@scope
@scope 㯠CSS ã®ã¢ããã«ã¼ã«ã使ç¨ããã¨ãç¹å®ã® DOM ãµãããªã¼å
ã®è¦ç´ ã鏿ã§ããããã«ãªããã»ã¬ã¯ã¿ã¼ã DOM æ§é ã«å¯æ¥ã«çµåããããã¨ãªããã¾ã䏿¸ããã«ããç¹å®ã®ã»ã¬ã¯ã¿ã¼ãæ¸ããã¨ãªããè¦ç´ ãæ£ç¢ºã«å¯¾è±¡ã¨ãããã¨ãã§ãã¾ãã
JavaScript ã§ @scope 㯠CSS ãªãã¸ã§ã¯ãã¢ãã«ã¤ã³ã¿ã¼ãã§ã¤ã¹ã® CSSScopeRule ããã¢ã¯ã»ã¹ãããã¨ãã§ãã¾ãã
æ§æ
@scope ã¢ããã«ã¼ã«ã¯ã 1 ã¤ä»¥ä¸ã®ã«ã¼ã«ã»ããï¼ã¹ã³ã¼ãä»ãã¹ã¿ã¤ã«ã«ã¼ã«ã¨å¼ã°ãã¾ãï¼ãåãã鏿ããè¦ç´ ã«é©ç¨ããã¹ã³ã¼ããå®ç¾©ãã¾ãã @scope 㯠2 ã¤ã®æ¹æ³ã§ä½¿ç¨ãããã¨ãã§ãã¾ãã
-
CSS ã®ä¸ã«ãããç¬ç«ãããããã¯ã¨ãã¦ããã®å ´åãã¹ã³ã¼ãã«ã¼ãã¨ãªãã·ã§ã³ã®ã¹ã³ã¼ããªãããã»ã¬ã¯ã¿ã¼ãå«ãåç½®ãé¨ãè¨è¿°ãã¾ãããããã¯ã¹ã³ã¼ãã®ä¸éã¨ä¸éãå®ç¾©ãã¾ãã
css@scope (scope root) to (scope limit) { ã«ã¼ã«ã»ãã } -
HTML ã§
<style>è¦ç´ ã®ä¸ã«è¨è¼ããã¤ã³ã©ã¤ã³ã¹ã¿ã¤ã«ã¨ãã¦ããã®å ´åãåç½®ãé¨ã¯é¤å¤ãããå²ã¾ããã«ã¼ã«ã»ããã¯èªåçã«<style>è¦ç´ ã®è¦ªè¦ç´ ã®ã¹ã³ã¼ãã«ãªãã¾ããhtml<parent-element> <style> @scope { ã«ã¼ã«ã»ãã } </style> </parent-element>
解説
è¤éãªã¦ã§ãææ¸ã«ã¯ããããã¼ãããã¿ã¼ããã¥ã¼ã¹è¨äºãå°å³ãã¡ãã£ã¢ãã¬ã¼ã¤ã¼ãåºåãªã©ã®é¨åãå«ã¾ãããã¨ãããã¾ããè¤éããå¢ãã«ã¤ãã¦ããããã®é¨åã®ã¹ã¿ã¤ã«è¨å®ã广çã«ç®¡çãããã¨ãéè¦ã«ãªããã¹ã¿ã¤ã«ã广çã«ã¹ã³ã¼ãåãããã¨ã§ããã®è¤éãã管çãããã¨ãã§ãã¾ãã以ä¸ã® DOM ããªã¼ãèãã¦ã¿ã¾ãããã
body
ââ article.feature
ââ section.article-hero
â ââ h2
â ââ img
â
ââ section.article-body
â ââ h3
â ââ p
â ââ img
â ââ p
â ââ figure
â ââ img
â ââ figcaption
â
ââ footer
ââ p
ââ img
ã¯ã©ã¹ã article-body ã§ãã <section> å
ã® <img> è¦ç´ ã鏿ãããå ´åã¯ã以ä¸ã®ããã«ãã¾ãã
.feature > .article-body > imgã®ãããªã»ã¬ã¯ã¿ã¼ãæ¸ãæ¹æ³ãããããããã¯é«ã詳細度ãæã¤ãã䏿¸ããã«ãããã¾ã DOM æ§é ã¨ç·å¯ã«çµåãã¦ãã¾ããå°æ¥ããã¼ã¯ã¢ããã®æ§é ãå¤ãã£ãããCSS ãæ¸ãç´ãå¿ è¦ãããããããã¾ããã.article-body imgã®ããã«ã詳細度ãä¸ãã¦æ¸ãæ¹æ³ãããããããã§ã¯sectionå ã®ç»åããã¹ã¦é¸æãã¦ãã¾ãã¾ãã
ããã§æçãªã®ã @scope ã§ããããã使ããã¨ã§ãã»ã¬ã¯ã¿ã¼ã対象ã¨ããè¦ç´ ãæ£ç¢ºã«å®ç¾©ãããã¨ãã§ãã¾ããä¾ãã°ã次ã®ä¾ã®ããã«åç¬ã® @scope ãããã¯ã使ç¨ãã¦ä¸è¨ã®åé¡ã解決ãããã¨ãã§ãã¾ãã
@scope (.article-body) to (figure) {
img {
border: 5px solid black;
background-color: goldenrod;
}
}
ã¹ã³ã¼ãã«ã¼ãã»ã¬ã¯ã¿ã¼ã§ãã .article-body ã¯ãã«ã¼ã«ã»ãããé©ç¨ããã DOM ããªã¼ã®ã¹ã³ã¼ãã®ä¸éãå®ç¾©ããã¹ã³ã¼ããªãããã»ã¬ã¯ã¿ã¼ã§ãã figure ã¯ä¸éãå®ç¾©ãã¾ãããã®çµæãã¯ã©ã¹ã article-body ã§ãã <section> ã®ä¸ã«ãã <img> è¦ç´ ã®ã¿ã鏿ããã<figure> è¦ç´ ã®ä¸ã¯é¸æããã¾ããã
ã¡ã¢: ãã®ãããªä¸éã¨ä¸éã®ããã¹ã³ã¼ãã¯ãä¸è¬ã«ãã¼ããã¹ã³ã¼ãã¨å¼ã°ãã¦ãã¾ãã
article-body ã¯ã©ã¹ãæã¤ <section> å
ã®ç»åããã¹ã¦é¸æãããå ´åã¯ãã¹ã³ã¼ããªãããã»ã¬ã¯ã¿ã¼ãçç¥ã§ãã¾ãã
@scope (.article-body) {
img {
border: 5px solid black;
background-color: goldenrod;
}
}
ãããã¯ã @scope ãããã¯ã article-body ã¯ã©ã¹ã®ä»ãã <section> ã®ä¸ãã¤ã³ã©ã¤ã³ã® <style> è¦ç´ ã®ä¸ã«è¨è¼ããããã¨ãã§ãã¾ãã
<section class="article-body">
<style>
@scope {
img {
border: 5px solid black;
background-color: goldenrod;
}
}
</style>
<!-- ... -->
</section>
ã¡ã¢:
éè¦ãªãã¨ã¯ã @scope ã¯ã»ã¬ã¯ã¿ã¼ã®ã¢ããªã±ã¼ã·ã§ã³ãåºæã® DOM ãµãããªã¼ã«åé¢ãããã¨ã¯ã§ãã¾ãããé©ç¨ãããã¹ã¿ã¤ã«ããµãããªã¼å
ã«å®å
¨ã«åé¢ãããã¨ã¯ã§ããªãã¨ãããã¨ã§ããï¼ä¾ãã° color ã font-family ã®ããã«ï¼åããç¶æ¿ãããããããã£ã¯ãè¨å®ããã¹ã³ã¼ãã®ãè¶
ãã¦ç¶æ¿ããã¾ãã
:scope æ¬ä¼¼ã¯ã©ã¹
@scope ãããã¯ã®ã³ã³ããã¹ãã«ããã¦ã :scope æ¬ä¼¼ã¯ã©ã¹ã¯ã¹ã³ã¼ãã«ã¼ãã表ãã¾ããã¹ã³ã¼ãã®å
é¨ããã¹ã³ã¼ãã«ã¼ãèªä½ã«ã¹ã¿ã¤ã«ãé©ç¨ããç°¡åãªæ¹æ³ãæä¾ãã¾ãã
@scope (.feature) {
:scope {
background: rebeccapurple;
color: antiquewhite;
font-family: sans-serif;
}
}
å®éã:scope ã¯ãã¹ã¦ã®ã¹ã³ã¼ãä»ãã¹ã¿ã¤ã«ã«ã¼ã«ã«æé»çã«ä»å ããã¾ããå¿
è¦ã§ããã°ãæç¤ºçã« :scope ãåç½®ããããå
¥ãåã»ã¬ã¯ã¿ã¼ (&) ãåç½®ããããã¦ãåã广ãå¾ããã¨ãã§ãã¾ãã
以ä¸ã®ãããã¯ã«ãã 3 ã¤ã®ã«ã¼ã«ã¯ã鏿ãããã®ããã¹ã¦åãã§ãã
@scope (.feature) {
img { ... }
:scope img { ... }
& img { ... }
}
ã¹ã³ã¼ãä»ãã»ã¬ã¯ã¿ã¼ã®ä½¿ç¨ã«é¢ããã¡ã¢
-
ã¹ã³ã¼ããªãããã¯
:scopeã使ç¨ãã¦ãã¹ã³ã¼ããªãããã¨ã«ã¼ãã¨ã®éã®åºæã®é¢ä¿è¦ä»¶ãæå®ãããã¨ãã§ãã¾ããä¾ãã°ã以ä¸ã®ããã«ãªãã¾ããcss/* :scope ã®ç´æ¥ã®åã§ããå ´åã«ã®ã¿ãã¹ã³ã¼ããªãããã«ãªãã¾ãã */ @scope (.article-body) to (:scope > figure) { ... } -
ã¹ã³ã¼ããªãããã¯
:scopeã使ç¨ãã¦ã¹ã³ã¼ãã«ã¼ãå¤ã®è¦ç´ ãåç §ãããã¨ãã§ãã¾ããä¾ãã°ã次ã®ããã«ãã¾ããcss/* figure 㯠:scope ã .feature ã®ä¸ã«ããå ´åã«éããªãããã¨ãªã */ @scope (.article-body) to (.feature :scope figure) { ... } -
ã¹ã³ã¼ãä»ãã¹ã¿ã¤ã«ã«ã¼ã«ã¯ãµãããªã¼ãé¤å¤ã§ãã¾ããã
:scope + pã®ãããªé¸æã¯ãµãããªã¼ã®å¤ã«ãªãã®ã§ç¡å¹ã§ãã -
ã¹ã³ã¼ãã®ã«ã¼ãã¨ãªãããã¯ã»ã¬ã¯ã¿ã¼ãªã¹ãã¨ãã¦å®ç¾©ãããã¨ãå¯è½ã§ããã®å ´åã¯è¤æ°ã®ã¹ã³ã¼ããå®ç¾©ããã¾ããæ¬¡ã®ä¾ã§ã¯ãã¯ã©ã¹ã
article-heroã¾ãã¯article-bodyã§ãã<section>å ã®<img>ã«ã¯ã¹ã¿ã¤ã«è¨å®ãé©ç¨ããã¾ããã<figure>ã®ä¸ã«å«ã¾ãã¦ãããã®ã«ã¯é©ç¨ããã¾ãããcss@scope (.article-hero, .article-body) to (figure) { img { border: 5px solid black; background-color: goldenrod; } }
@scope ã®è©³ç´°åº¦
ã«ã¼ã«ã»ããã @scope ãããã¯ã®ä¸ã«è¨è¿°ãã¦ããã¹ã³ã¼ãã®ã«ã¼ãã¨ãªãããã®ä¸ã§ä½¿ç¨ããã¦ããã»ã¬ã¯ã¿ã¼ã«é¢ä¿ãªãããã®ã»ã¬ã¯ã¿ã¼ã®è©³ç´°åº¦ã«ã¯å½±é¿ãã¾ãããä¾ãã°ã次ã®ããã«ãªãã¾ãã
@scope (.article-body) {
/* img ã¯æå¾
éãã 0-0-1 ã®è©³ç´°åº¦ã«ãªãã¾ãã */
img { ... }
}
ãããããã :scope æ¬ä¼¼ã¯ã©ã¹ãæç¤ºçã«ã¹ã³ã¼ãã®ã¤ããã»ã¬ã¯ã¿ã¼ã«ä»å ããã®ã§ããã°ããã®è©³ç´°åº¦ãè¨ç®ããéã«èæ
®ããå¿
è¦ãããã¾ãã :scope ã¯éå¸¸ã®æ¬ä¼¼ã¯ã©ã¹ã¨åæ§ã 0-1-0 ã®è©³ç´°åº¦ã«ãªãã¾ããä¾ãã°ã以ä¸ã®ããã«ãªãã¾ãã
@scope (.article-body) {
/* :scope img 㯠0-1-0 + 0-0-1 = 0-1-1 ã®è©³ç´°åº¦ã«ãªãã¾ãã */
:scope img { ... }
}
ã¹ã³ã¼ããããã¯å
ã§ & ã»ã¬ã¯ã¿ã¼ã使ç¨ããå ´åã & ã¯ã¹ã³ã¼ãã®ã«ã¼ãã»ã¬ã¯ã¿ã¼ã表ãã¾ããããã¯ãå
é¨çã«ã¯ :is() æ¬ä¼¼ã¯ã©ã¹é¢æ°ã®ä¸ã«å
ã¾ããã»ã¬ã¯ã¿ã¼ã¨ãã¦è¨ç®ããã¾ããä¾ãã°ã次ã®ããã«ãªãã¾ãã
@scope (figure, #primary) {
& img { ... }
}
& img 㯠:is(figure, #primary) img ã¨ç価ã§ãã :is() ã¯æã詳細ãªå¼æ°ï¼ãã®å ´å㯠#primaryï¼ã®è©³ç´°åº¦ãåãã®ã§ãã¹ã³ã¼ãããã & img ã»ã¬ã¯ã¿ã¼ã®è©³ç´°åº¦ã¯ 1-0-0 + 0-0-1 = 1-0-1 ã¨ãªãã¾ãã
@scope å
ã«ããã :scope 㨠& ã®éã
:scope ã¯ä¸è´ããã¹ã³ã¼ãã«ã¼ãã表ãã & ã¯ã¹ã³ã¼ãã«ã¼ãã«ä¸è´ããããã«ä½¿ç¨ããã»ã¬ã¯ã¿ã¼ã表ãã¾ãããã®ããã & ãè¤æ°åé£çµãããã¨ãå¯è½ã§ãããããã :scope ã使ç¨ãããã¨ãã§ããã®ã¯ä¸åº¦ã ãã§ããã¹ã³ã¼ãã«ã¼ãã®ä¸ã®ã¹ã³ã¼ãã«ã¼ãã«ç
§åãããã¨ã¯ã§ãã¾ããã
@scope (.feature) {
/* ä¸è´ããã«ã¼ã .feature å
ã® .feature ã鏿ãã */
& & { ... }
/* æ©è½ããªã */
:root :root { ... }
}
@scope ã®ç«¶åã®è§£æ±ºæ¹æ³
@scope 㯠CSS ã«ã¹ã±ã¼ãã«æ°ããåºæºãã¹ã³ã¼ãã®è¿æ¥æ§ã追å ãã¾ããããã¯ã 2 ã¤ã®ã¹ã³ã¼ãã«ç«¶åããã¹ã¿ã¤ã«è¨å®ãããå ´åãã¹ã³ã¼ãã«ã¼ãã¾ã§ã® DOM ããªã¼é層ã®ãããæ°ãæãå°ãªãã¹ã¿ã¤ã«ãé©ç¨ããã¨ããç¶æ
ã§ãããã®æå³ãä¾ã§è¦ã¦ããã¾ãããã
以ä¸ã® HTML ã¹ããããã§ã¯ãç°ãªããã¼ãã®ã«ã¼ããäºãã«å ¥ãåã«ãªã£ã¦ãã¾ãã
<div class="light-theme">
<p>Light theme text</p>
<div class="dark-theme">
<p>Dark theme text</p>
<div class="light-theme">
<p>Light theme text</p>
</div>
</div>
</div>
ãã¼ãã® CSS ããã®ããã«æ¸ãã¨ãåé¡ãçºçãã¾ãã
.light-theme {
background: #ccc;
}
.dark-theme {
background: #333;
}
.light-theme p {
color: black;
}
.dark-theme p {
color: white;
}
ä¸çªå
å´ã®æ®µè½ã¯ã©ã¤ããã¼ãã«ã¼ãã®ä¸ãªã®ã§ãé»ãè²ã¥ããããã¯ãã§ãããããã .light-theme p 㨠.dark-theme p ã®ä¸¡æ¹ã対象ã«ãã¦ãã¾ãã .dark-theme p ã®ã«ã¼ã«ã®æ¹ãã½ã¼ã¹ã®é çªã§å¾ã«ç¾ããããããã¡ããé©ç¨ãããæ®µè½ã¯èª¤ã£ã¦ç½ã«çè²ããã¦ãã¾ãã¾ãã
ãããä¿®æ£ããã«ã¯ã以ä¸ã®ããã« @scope ã使ç¨ãããã¨ãã§ãã¾ãã
@scope (.light-theme) {
:scope {
background: #ccc;
}
p {
color: black;
}
}
@scope (.dark-theme) {
:scope {
background: #333;
}
p {
color: white;
}
}
ããã§ä¸çªå
å´ã®æ®µè½ã¯æ£ããé»ãè²ã¥ãããã¾ãããããã¯ã .light-theme ã®ã¹ã³ã¼ãã«ã¼ããã㯠DOM ããªã¼ã®é層ã1é層ããé¢ãã¦ãããã .dark-theme ã®ã¹ã³ã¼ãã«ã¼ããã㯠2 é層ããé¢ãã¦ããªãããã§ãããããã£ã¦ã light ã¹ã¿ã¤ã«ãåã¡ã¾ãã
ã¡ã¢: ã¹ã³ã¼ãã®è¿ãã¯ã½ã¼ã¹ã®é åºã䏿¸ããã¾ãããéè¦åº¦ãã¬ã¤ã¤ã¼ã詳細度ã®ãããªä»ã«ãåªå 度ã®é«ã仿§ã«ãã£ã¦ä¸æ¸ãããã¾ãã
形弿æ³
@scope =
@scope [ ( <scope-start> ) ]? [ to ( <scope-end> ) ]? { <block-contents> }
ä¾
>ã¹ã³ã¼ãã«ã¼ãå ã®åºæ¬çãªã¹ã¿ã¤ã«è¨å®
ãã®ä¾ã§ã¯ã 2 ã¤ã®å¥åã® @scope ãããã¯ã使ç¨ãã¦ããããã .light-scheme 㨠.dark-scheme ã¯ã©ã¹ãæã¤è¦ç´ å
ã®ãªã³ã¯ã¨ç
§åãã¦ãã¾ããã¹ã³ã¼ãã«ã¼ãèªä½ã鏿ããã¹ã¿ã¤ã«è¨å®ãæä¾ããããã« :scope ã使ç¨ãã¦ãããã¨ã«æ³¨æãã¦ãã ããããã®ä¾ã§ã¯ãã¹ã³ã¼ãã«ã¼ã㯠<div> è¦ç´ ã§ããããããã«ã¯ã©ã¹ãé©ç¨ããã¦ãã¾ãã
HTML
<div class="light-scheme">
<p>
MDN ã«ã¯ã<a href="/ja/docs/Web/HTML">HTML</a>ã
<a href="/ja/docs/Web/CSS">CSS</a>ã
<a href="/ja/docs/Web/JavaScript">JavaScript</a>
ã«é¢ããããããã®æ
å ±ãããã¾ãã
</p>
</div>
<div class="dark-scheme">
<p>
MDN ã«ã¯ã<a href="/ja/docs/Web/HTML">HTML</a>ã
<a href="/ja/docs/Web/CSS">CSS</a>ã
<a href="/ja/docs/Web/JavaScript">JavaScript</a>
ã«é¢ããããããã®æ
å ±ãããã¾ãã
</p>
</div>
CSS
@scope (.light-scheme) {
:scope {
background-color: plum;
}
a {
color: darkmagenta;
}
}
@scope (.dark-scheme) {
:scope {
background-color: darkmagenta;
color: antiquewhite;
}
a {
color: plum;
}
}
çµæ
ä¸è¨ã®ã³ã¼ãã§ã¯ããã®ããã«æç»ããã¾ãã
ã¹ã³ã¼ãã«ã¼ãã¨ã¹ã³ã¼ããªããã
ãã®ä¾ã§ã¯ãå
ã»ã©è§£èª¬ã®ç¯ã§èª¬æãã DOM æ§é ã«ä¸è´ãã HTML ã¹ãããããæå®ããã¦ãã¾ãããã®æ§é ã¯å
¸åçãªè¨äºã®æ¦è¦ã表ãã¾ããæ³¨ç®ãã¹ãä¸»ãªæ©è½ã¯ã <img> è¦ç´ ã§ãæ§é å
ã®æ§ã
ãªã¬ãã«ã§å
¥ãåã«ãªã£ã¦ãã¾ãã
ãã®ä¾ã®ç®çã¯ã <img> è¦ç´ ã®ã¹ã¿ã¤ã«è¨å®ã«ã¹ã³ã¼ãã«ã¼ãã¨ãªãããã使ç¨ããéå±¤ã®æä¸ä½ããéå§ãã <figure> è¦ç´ å
ã® <img> ã¾ã§ããï¼ãã㦠<img> ã¯å«ã¾ããªãï¼è¡¨ç¤ºãããªãæ¹æ³ã示ããã¨ã§ããã¤ã¾ãããã¼ãããã¹ã³ã¼ãã使ãã广ãããã¾ãã
HTML
<article class="feature">
<section class="article-hero">
<h2>Article heading</h2>
<img alt="image" />
</section>
<section class="article-body">
<h3>Article subheading</h3>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam euismod
consectetur leo, nec eleifend quam volutpat vitae. Duis quis felis at
augue imperdiet aliquam. Morbi at felis et massa mattis lacinia. Cras
pharetra velit nisi, ac efficitur magna luctus nec.
</p>
<img alt="image" />
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<figure>
<img alt="image" />
<figcaption>My infographic</figcaption>
</figure>
</section>
<footer>
<p>Written by Chris Mills.</p>
<img alt="image" />
</footer>
</article>
CSS
ãã® CSS ã«ã¯ã 2 ã¤ã® @scope ãããã¯ãããã¾ãã
- æåã®
@scopeãããã¯ã¯ã.featureã®ã¯ã©ã¹ãæã¤è¦ç´ ï¼ãã®å ´åã¯å¤å´ã®<div>ã®ã¿ï¼ãã¹ã³ã¼ãã«ã¼ãã¨ãã¦å®ç¾©ãã¦ããã@scopeã使ç¨ãã¦åºæã® HTML ãµãã»ããããã¼ãã«ã§ãããã¨ã示ãã¦ãã¾ãã - 2 ã¤ç®ã®
@scopeãããã¯ãã¹ã³ã¼ãã«ã¼ãã.featureã¯ã©ã¹ã®è¦ç´ ã¨å®ç¾©ãã¦ãã¾ãããããã«ã¹ã³ã¼ããªãããã¯figureã¨å®ç¾©ãã¦ãã¾ããããã«ãããæ ¼ç´ãããã«ã¼ã«ã»ããã¯ã¹ã³ã¼ãã«ã¼ãï¼ãã®å ´åã¯<div class="figure"> ... </div>ï¼å ã®ä¸è´ããè¦ç´ ã«ã®ã¿é©ç¨ãããåå«ã®<figure>è¦ç´ ã®ä¸ã«å ¥ãåã«ãªã£ã¦ãããã®ã¯é©ç¨ããã¾ããããã®@scopeãããã¯ã«ã¯ã<img>è¦ç´ ã太ã黿 ã¨éè²ã®èæ¯è²ã§ã¹ã¿ã¤ã«è¨å®ããåä¸ã®ã«ã¼ã«ã»ãããæ ¼ç´ããã¦ãã¾ãã
/* ã¹ã³ã¼ãåãã CSS */
@scope (.feature) {
:scope {
background: rebeccapurple;
color: antiquewhite;
font-family: sans-serif;
}
figure {
background-color: white;
border: 2px solid black;
color: black;
padding: 10px;
}
}
/* ãã¼ãããã¹ã³ã¼ã */
@scope (.feature) to (figure) {
img {
border: 5px solid black;
background-color: goldenrod;
}
}
çµæ
ã¬ã³ããªã³ã°ãããã³ã¼ãã§ã¯ã <figure> è¦ç´ ï¼ã©ãã«ä»ã㯠"My infographic"ï¼å
ã®ãã®ãé¤ãã¦ããã¹ã¦ã®<img>è¦ç´ ã太ãå¢çç·ã¨éè²ã®èæ¯ã§ã¹ã¿ã¤ã«è¨å®ããã¦ãããã¨ã«æ³¨ç®ãã¦ãã ããã
仿§æ¸
| Specification |
|---|
| CSS Cascading and Inheritance Level 6 > # scoped-styles > |
ãã©ã¦ã¶ã¼ã®äºææ§
>css.at-rules.scope
css.selectors.nesting.at-scope
é¢é£æ å ±
:scopeCSSScopeRule- Limit the reach of your selectors with the CSS
@scopeat-rule on developer.chrome.com (2023)