CSS :in-range æ¬ä¼¼ã¯ã©ã¹
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2015å¹´11æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
:in-range 㯠CSS ã®æ¬ä¼¼ã¯ã©ã¹ã§ãç¾å¨ã®å¤ã min ããã³ max 屿§ã«ããå¶éç¯å²å
ã«ãã <input> è¦ç´ ã表ãã¾ãã
試ãã¦ã¿ã¾ããã
label {
display: block;
margin-top: 1em;
}
input:in-range {
background-color: palegreen;
}
<form>
<label for="amount">ãã±ããã®ææ°ã¯ï¼ï¼2ï½6 æï¼</label>
<input id="amount" name="amount" type="number" min="2" max="6" value="4" />
<label for="dep">åºçºæ¥: ï¼2022 å¹´ã¯ãã¹ã¦å©ç¨å¯è½ï¼</label>
<input
id="dep"
name="dep"
type="date"
min="2022-01-01"
max="2022-12-31"
value="2025-05-05" />
<label for="ret">台鿥: ï¼2022 å¹´ã¯ãã¹ã¦å©ç¨å¯è½ï¼</label>
<input id="ret" name="ret" type="date" min="2022-01-01" max="2022-12-31" />
</form>
ãã®æ¬ä¼¼ã¯ã©ã¹ã¯ãå ¥åæ¬ã®ç¾å¨ã®å¤ã許å¯ãããç¯å²å ã«ãããã¨ãã¦ã¼ã¶ã¼ã«è¦è¦çã«ç¤ºãã®ã«ä¾¿å©ã§ãã
ã¡ã¢: ãã®æ¬ä¼¼ã¯ã©ã¹ã¯ç¯å²å¶éãæã¤ï¼ã¾ãã¯è¨å®ã§ããï¼è¦ç´ ã«ã®ã¿é©ç¨ããã¾ãããã®ãããªå¶éããªãå ´åã¯ãè¦ç´ 㯠"in-range" ã«ã "out-of-range" ã«ããªãã¾ããã
æ§æ
:in-range {
/* ... */
}
ä¾
>HTML
<form action="" id="form1">
<ul>
1 ãã 10 ã®éã®å¤ãæå¹ã§ãã
<li>
<input
id="value1"
name="value1"
type="number"
placeholder="1 to 10"
min="1"
max="10"
value="12"
required />
<label for="value1">ããªãã®å¤ã¯</label>
</li>
</ul>
</form>
CSS
li {
list-style: none;
margin-bottom: 1em;
}
input {
border: 1px solid black;
}
input:in-range {
background-color: rgb(0 255 0 / 25%);
}
input:out-of-range {
background-color: rgb(255 0 0 / 25%);
border: 2px solid red;
}
input:in-range + label::after {
content: "ç¯å²å
ã§ãã";
}
input:out-of-range + label::after {
content: "ç¯å²å¤ã§ãï¼";
}
çµæ
ã¡ã¢:
空㮠<input> ã¯ç¯å²å¤ã¨ãã¦ã«ã¦ã³ããããã :out-of-range æ¬ä¼¼ã¯ã©ã¹ã»ã¬ã¯ã¿ã¼ã§é¸æããããã¨ã¯ããã¾ããã空ã®å
¥åã鏿ããããã® :blank æ¬ä¼¼ã¯ã©ã¹ãããã¾ããããã®è¨äºãæ¸ãã¦ããæç¹ã§ã¯ãå®é¨çã§å¯¾å¿ãååã§ã¯ããã¾ãããã¾ãã required 屿§ã¨ :invalid æ¬ä¼¼ã¯ã©ã¹ã使ç¨ããã¨ãå
¥åãå¿
é ã«ããããã®ããä¸è¬çãªãã¸ãã¯ã¨ã¹ã¿ã¤ã«ãæä¾ã§ãã¾ã (:invalid ã¯ç©ºç½ããã³ç¯å²å¤ã®å
¥åã®ã¹ã¿ã¤ã«ãæå®ãã¾ã)ã
仿§æ¸
| 仿§æ¸ |
|---|
| HTML > # selector-in-range > |
| Selectors Level 4 > # in-range-pseudo > |