Limited availability
color
ç±»åç <input>
å
ç´ ä¸ºç¨æ·æä¾äºæå®é¢è²çç¨æ·çé¢ï¼æä½¿ç¨å¯è§åé¢è²éæ©å¨ï¼æä»¥ #rrggbb
åå
è¿å¶æ ¼å¼è¾å
¥é¢è²å¼ã
è½ç¶ CSS é¢è²æå¾å¤æ ¼å¼ï¼å¦é¢è²åç§°ãåè½è¡¨è®°å嫿éæééçåå è¿å¶ï¼ï¼ä½æ¯è¿éåªæ¯æç®åé¢è²ï¼æ éæééï¼ã
æ¤å ç´ çå¤è§ä¼å æµè§å¨ä¸åèä¸åï¼å®å¯è½æ¯ä¸ä¸ªç®åçææ¬è¾å ¥ï¼èªå¨éªè¯ä»¥ç¡®ä¿é¢è²ä¿¡æ¯ä»¥æ£ç¡®çæ ¼å¼è¾å ¥ï¼æä¸ä¸ªå¹³å°æ åçé¢è²éæ©å¨ï¼ææç§èªå®ä¹çé¢è²éæ©å¨çªå£ã
å°è¯ä¸ä¸<p>Choose your monster's colors:</p>
<div>
<input type="color" id="head" name="head" value="#e66465" />
<label for="head">Head</label>
</div>
<div>
<input type="color" id="body" name="body" value="#f6b73c" />
<label for="body">Body</label>
</div>
p,
label {
font:
1rem "Fira Sans",
sans-serif;
}
input {
margin: 0.4rem;
}
å¼
color
ç±»åç <input>
å
ç´ ç value
æ»æ¯å
å«ä¸ä¸ª 7 个å符çå符串ï¼å®ä»¥ 16 è¿å¶æ ¼å¼æå® RGB é¢è²ãè½ç¶ä½ å¯ä»¥ç¨å¤§å忝æå°å忝è¾å
¥é¢è²ï¼ä½å®å°ä»¥å°å忝形å¼åå¨ã该å¼ä»ä¸ä»¥ä»»ä½å
¶ä»å½¢å¼åºç°ï¼ä¹ä»ä¸ä¸ºç©ºã
夿³¨ï¼ å°è¯¥å¼è®¾ç½®ä¸ºä»»ä½ä¸æ¯ææçãå®å
¨ä¸éæçãRGB é¢è²çåå
è¿å¶è¡¨ç¤ºï¼é½å°å¯¼è´è¯¥å¼è¢«è®¾ç½®ä¸º #000000
ãç¹å«æ¯ï¼ä½ ä¸è½ä½¿ç¨ CSS çæ ååé¢è²åç§°æä»»ä½ CSS 彿°è¯æ³æ¥è®¾ç½®è¯¥å¼ï¼è®°ä½ï¼HTML å CSS æ¯ç¬ç«çè¯è¨åè§èï¼ãæ¤å¤ï¼ä¸æ¯æå¸¦æéæééçé¢è²ï¼ç¨ 9 个å符çåå
è¿å¶è¡¨ç¤ºï¼ä¾å¦ #009900aa
ï¼æå®é¢è²ï¼ä¹ä¼å¯¼è´é¢è²è¢«è®¾ç½®ä¸º #000000
ã
ç±äºæéçæ¯æå±æ§ï¼color
ç±»åçè¾å
¥å
容æ¯è¾ç®åã
ä½ å¯ä»¥æ´æ°ä¸é¢çç®åä¾åï¼è®¾ç½®ä¸ä¸ªé»è®¤å¼ï¼è¿æ ·é¢è²äºå°±ä¼é¢å å¡«ä¸é»è®¤çé¢è²ï¼é¢è²éæ©å¨ï¼å¦ææçè¯ï¼ä¹ä¼é»è®¤ä¸ºè¿ä¸ªé¢è²ã
<input type="color" value="#ff0000" />
å¦æä½ æ²¡ææå¨æå®çè¯ï¼å
¶é»è®¤å¼ä¸º #000000
ï¼å³é»è²ãè¾å
¥å¿
须为 7 个å符çåå
è¿å¶è¡¨ç¤ºï¼æå³çéè¦ä»¥â#â符å·å¼å§ï¼åè·ä»£è¡¨çº¢ã绿ãèçåå
è¿å¶å符å 2 个ï¼å½¢å¦ #rrggbb
ï¼ãå¦æä½ æ³è¾å
¥çé¢è²æ¯å
¶ä»æ ¼å¼ï¼æ¯å¦ CSS é¢è²åç§°æ CSS é¢è²å½æ°å¦ rgb()
æ rgba()
è®°æ³ï¼ï¼å¨è®¾å® value
弿¶å¿
é¡»å°å
¶è½¬æ¢ä¸ºè¿ç§æ ¼å¼ã
æ£å¦å
¶ä»ç±»åç <input>
å
ç´ ï¼æä¸¤ä¸ªåå¼çæ¹åç¸å
³çäºä»¶ï¼input
å change
ãæ¯æ¬¡é¢è²åæ´é½ä¼è§¦å <input>
å
ç´ ä¸ç input
äºä»¶ãç¨æ·å
³ééè²å¨ä¹åä¼è§¦å change
äºä»¶ã对äºè¿ä¸¤ä¸ªäºä»¶ï¼é½å¯ä»¥éè¿ value
屿§è·åæ°å¼ã
以ä¸ä»£ç 为çå¬é¢è²å¼ååç示ä¾ï¼
colorPicker.addEventListener("input", updateFirst, false);
colorPicker.addEventListener("change", watchColorPicker, false);
function watchColorPicker(event) {
document.querySelectorAll("p").forEach((p) => {
p.style.color = event.target.value;
});
}
éåå¼
彿µè§å¨ä¸æ¯æé¢è²éæ©å¨æ¥å£æ¶ï¼å®å¯¹é¢è²è¾å
¥çå®ç°å°æ¯ä¸ä¸ªèªå¨éªè¯å
å®¹ä»¥ç¡®ä¿æ°å¼çæ ¼å¼æ£ç¡®çææ¬æ¡ãå¨è¿ç§æ
åµä¸ï¼ä½ å¯ä»¥ä½¿ç¨ select()
æ¹æ³æ¥éæ©å½åç¼è¾æ ä¸çææ¬ã
妿æµè§å¨æä¾äºéè²å¨ï¼select()
æ¹æ³å°ä¼ä»ä¹ä¹ä¸åãå æ¤ï¼éè¦çå¿è¿ä¸¤ç§æ
åµä¸æ¹æ³è¡ä¸ºçå·®å¼ã
妿å½åçç¨æ·ä»£çä¸ï¼ç¨æ·è¾å
¥æ æ³è½¬æ¢ä¸º 7 个å符çåå
è¿å¶ RGB å½¢å¼ï¼ä¼è¢«å¤å®ä¸ºéæ³è¾å
¥ãå¨è¿ç§æ
åµä¸ï¼:invalid
伪类ä¼ä½ç¨äºè¯¥å
ç´ ä¸ã
让æä»¬å建ä¸ä¸ªä¾åï¼éè¿è·è¸ª change
å input
äºä»¶ï¼å¯¹é¢è²è¾å
¥åä¸äºå¤çï¼å°æ°é¢è²åºç¨å°ææ¡£ä¸çæ¯ä¸ª <p>
å
ç´ ã
è¿ä¸ª HTML æ¯ç¸å½ç®åçââæè¥å¹²å
å«æè¿°ææç段è½åä¸ä¸ª ID 为 colorWell
ç color
<input>
ï¼æä»¬å°ç¨å®æ¥æ¹åæ®µè½ææ¬çé¢è²ã
<p>
An example demonstrating the use of the
<code><input type="color"></code> control.
</p>
<label for="colorWell">Color:</label>
<input type="color" value="#ff0000" id="colorWell" />
<p>
Watch the paragraph colors change when you adjust the color picker. As you
make changes in the color picker, the first paragraph's color changes, as a
preview (this uses the <code>input</code> event). When you close the color
picker, the <code>change</code> event fires, and we detect that to change
every paragraph to the selected color.
</p>
JavaScript
é¦å
æ¯ä¸äºè®¾ç½®ï¼è¿éæä»¬å»ºç«äºä¸äºåéï¼è®¾ç½®äºä¸ä¸ªå
嫿们å¨ç¬¬ä¸æ¬¡å è½½æ¶è¦è®¾ç½®çé¢è²äºçåéï¼ç¶åè®¾ç½®äº load
å¤çå¨ï¼å¨é¡µé¢å®å
¨å è½½åå主è¦çå¯å¨å·¥ä½ã
let colorWell;
const defaultColor = "#0000ff";
window.addEventListener("load", startup, false);
åå§å
䏿¦é¡µé¢å®å
¨å è½½ï¼å°±ä¼è°ç¨æä»¬ç load
äºä»¶å¤çå¨ startup()
ï¼
function startup() {
colorWell = document.querySelector("#colorWell");
colorWell.value = defaultColor;
colorWell.addEventListener("input", updateFirst, false);
colorWell.addEventListener("change", updateAll, false);
colorWell.select();
}
å¨ä¸ä¸ªå«å colorWell
çåéä¸è·å¾å¯¹é¢è² <input>
å
ç´ çå¼ç¨ï¼ç¶åå°é¢è²è¾å
¥çå¼è®¾ç½®ä¸º defaultColor
ä¸çå¼ãç¶åé¢è²è¾å
¥ç input
äºä»¶è¢«è®¾ç½®ä¸ºè°ç¨æä»¬ç updateFirst()
彿°ï¼è change
äºä»¶è¢«è®¾ç½®ä¸ºè°ç¨ updateAll()
ãè¿äºé½å¨ä¸é¢çå°ã
æåï¼å¦ææ§ä»¶è¢«å®ç°ä¸ºææ¬åæ®µï¼æä»¬è°ç¨ select()
æ¥éæ©é¢è²è¾å
¥çææ¬å
容ï¼å¦ææä¾çæ¯é¢è²éæ©å¨æ¥å£ï¼è¿å°±æ²¡æææï¼ã
æä»¬æä¾äºä¸¤ä¸ªå¤çé¢è²ååç彿°ãupdateFirst()
彿°æ¯ä¸ºäºååº input
äºä»¶èè°ç¨çã宿¹åææ¡£ä¸ç¬¬ä¸ä¸ªæ®µè½å
ç´ çé¢è²ï¼ä»¥å¹é
é¢è²è¾å
¥çæ°å¼ãç±äºæ¯æ¬¡å¯¹æ°å¼è¿è¡è°æ´æ¶é½ä¼è§¦å input
äºä»¶ï¼ä¾å¦ï¼å¦æå¢å äºé¢è²ç亮度ï¼ï¼å¨ä½¿ç¨é¢è²éæ©å¨æ¶ï¼è¿äºäºä»¶ä¼éå¤åçã
function updateFirst(event) {
const p = document.querySelector("p");
if (p) {
p.style.color = event.target.value;
}
}
å½éåºé¢è²éæ©å¨æ¶ï¼è¡¨æå¼ä¸ä¼åæ¹åï¼é¤éç¨æ·éæ°æå¼é¢è²éæ©å¨ï¼ï¼ä¼å该å
ç´ åé change
äºä»¶ãæä»¬ä½¿ç¨ updateAll()
彿°æ¥å¤ç该äºä»¶ï¼ä½¿ç¨ Event.target.value
æ¥è·å¾æç»éæ©çé¢è²ï¼
function updateAll(event) {
document.querySelectorAll("p").forEach((p) => {
p.style.color = event.target.value;
});
}
è¿å°è®¾ç½®æ¯ä¸ª <p>
åºåçé¢è²ï¼ä½¿å
¶ color
屿§ä¸é¢è²è¾å
¥çå½åå¼ç¸å¹é
ï¼é¢è²è¾å
¥æ¯ç¨ event.target
å¼ç¨çã
æç»çè¿è¡ç»æå¦ä¸æç¤ºï¼
è§è æµè§å¨å ¼å®¹æ§ åè§RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4