CSS를 사용하여 HTML 입력의 자리 표시자 색상 변경
P粉068510991
P粉068510991 2023-08-27 11:17:26
0
2
521
<p>Chrome v4는 <code>input[type=text]</code> 요소에 대한 자리 표시자 속성을 지원합니다(다른 요소도 동일할 수 있음). </p> <p>그러나 다음 CSS는 자리 표시자 값에 대해 아무 작업도 수행하지 않습니다. </p> <p><br /></p> <pre class="brush:css;toolbar:false;">input[자리 표시자], [자리 표시자], *[자리 표시자] { 색상: 빨간색! 중요; }</pre> <pre class="brush:html;toolbar:false;"><input type="text" placeholder="값"></pre> <p><br /></p>

빨간색 대신 회색으로 유지됩니다. </p> <p><strong>자리 표시자 텍스트의 색상을 변경할 수 있는 방법이 있나요? </strong></p>

P粉068510991
P粉068510991

모든 응답(2)
P粉680087550

으아악 으아악

이렇게 하면 모든 inputtextarea자리 표시자의 스타일이 지정됩니다.

중요: 이 규칙을 그룹화하지 마세요. 대신 각 선택기에 대해 별도의 규칙을 만드세요(그룹의 잘못된 선택기는 전체 그룹을 무효화합니다).

P粉765684602

구현

의사 요소, 의사 클래스, 없음의 세 가지 구현이 있습니다.

  • WebKit, Blink(Safari, Google Chrome, Opera 15+) 및 Microsoft Edge는 의사 요소를 사용합니다. ::-webkit-input-placeholder. [참조]
  • Mozilla Firefox 4~18은 의사 클래스인 :-moz-placeholder(a 콜론)을 사용합니다. [참조]
  • Mozilla Firefox 19+는 의사 요소: ::-moz-placeholder를 사용하지만 이전 선택기는 한동안 계속 작동합니다. [참고]
  • Internet Explorer 10 및 11은 의사 클래스를 사용합니다: :-ms-input-placeholder. [참고]
  • 2017년 4월: 대부분의 최신 브라우저는 간단한 의사 요소를 지원합니다. ::placeholder [Ref]

Internet Explorer 9 이하는 placeholder 속성을 전혀 지원하지 않는 반면, Opera 12 이하는 모든 자리 표시자에 대해 CSS 선택기를 지원하지 않습니다.

최상의 구현 옵션에 대한 논의가 계속됩니다. 의사 요소는 shadow DOM의 실제 요소처럼 동작합니다. input 上的 padding 의사 요소와 동일한 배경색을 얻지 못합니다.

CSS 선택기

사용자 에이전트는 알 수 없는 선택기가 있는 규칙을 무시해야 합니다. 선택기 레벨 3을 참조하세요.

그래서 브라우저마다 별도의 규칙을 만들어야 합니다. 그렇지 않으면 모든 브라우저에서 전체 그룹이 무시됩니다.

으아악 으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿