suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Ändern Sie die Platzhalterfarbe einer HTML-Eingabe mithilfe von CSS

<p>Chrome v4 unterstützt Platzhalterattribute für das Element <code>input[type=text]</code> (andere können dasselbe tun). </p> <p>Das folgende CSS macht jedoch nichts mit dem Platzhalterwert: </p> <p><br /></p> <pre class="brush:css;toolbar:false;">input[placeholder], [placeholder], *[placeholder] { Farbe: rot !wichtig; }</pre> <pre class="brush:html;toolbar:false;"><input type="text" placeholder="Value"></pre> <p><br /></p> Der <p><code>Wert</code> bleibt <code>grau</code>. </p> <p><strong>Gibt es eine Möglichkeit, die Farbe des Platzhaltertextes zu ändern? </strong></p>
P粉068510991P粉068510991517 Tage vor556

Antworte allen(2)Ich werde antworten

  • P粉680087550

    P粉6800875502023-08-28 10:14:21

    /* do not group these rules */
    *::-webkit-input-placeholder {
        color: red;
    }
    *:-moz-placeholder {
        /* FF 4-18 */
        color: red;
        opacity: 1;
    }
    *::-moz-placeholder {
        /* FF 19+ */
        color: red;
        opacity: 1;
    }
    *:-ms-input-placeholder {
        /* IE 10+ */
        color: red;
    }
    *::-ms-input-placeholder {
        /* Microsoft Edge */
        color: red;
    }
    *::placeholder {
        /* modern browser */
        color: red;
    }
    <input placeholder="hello"/> <br />
    <textarea placeholder="hello"></textarea>

    这将为所有inputtextarea占位符设置样式。

    重要说明:不要对这些规则进行分组。相反,为每个选择器制定单独的规则(组中一个无效的选择器会使整个组无效)。

    Antwort
    0
  • P粉765684602

    P粉7656846022023-08-28 09:38:19

    实施

    共有三种不同的实现:伪元素、伪类和无。

    • WebKit、Blink(Safari、Google Chrome、Opera 15+)和 Microsoft Edge 使用伪元素:::-webkit-input-placeholder[参考]
    • Mozilla Firefox 4 到 18 使用伪类::-moz-placeholder一个冒号)。 [参考]
    • Mozilla Firefox 19+ 使用伪元素:::-moz-placeholder,但旧的选择器仍将工作一段时间。 [参考]
    • Internet Explorer 10 和 11 使用伪类::-ms-input-placeholder[参考]
    • 2017 年 4 月:大多数现代浏览器支持简单的伪元素 ::placeholder [Ref]

    Internet Explorer 9 及更低版本根本不支持 placeholder 属性,而 Opera 12 及更低版本不支持任何占位符的 CSS 选择器。

    关于最佳实施方案的讨论仍在继续。请注意,伪元素的行为就像阴影中的真实元素一样DOMinput 上的 padding 将不会获得与伪元素相同的背景颜色。

    CSS 选择器

    用户代理需要忽略具有未知选择器的规则。请参阅选择器级别 3

    因此我们需要为每个浏览器制定单独的规则。否则整个组将被所有浏览器忽略。

    ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
        color:    #909;
    }
    :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
       color:    #909;
       opacity:  1;
    }
    ::-moz-placeholder { /* Mozilla Firefox 19+ */
       color:    #909;
       opacity:  1;
    }
    :-ms-input-placeholder { /* Internet Explorer 10-11 */
       color:    #909;
    }
    ::-ms-input-placeholder { /* Microsoft Edge */
       color:    #909;
    }
    
    ::placeholder { /* Most modern browsers support this now. */
       color:    #909;
    }
    <input placeholder="Stack Snippets are awesome!">

    Antwort
    0
  • StornierenAntwort