Firefox가 내 입력/자리 표시 자 색상을 변경하는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/19846343

문제

나는 내 양식의 자리 표시 자의 색상으로 지정하고있는 색상을 사용하기 위해 Firefox를 얻기 위해 모든 것을 시도했습니다. 사용 포함 :-moz-placeholder 내 CSS와 모든 것에서 모든 색상은 내가 지정한 색상이 아닙니다.

Firefox는 밝은 회색 A의 기본 입력/자리 표시 자 색상을 사용한다는 것을 알고 있지만 실제로 완전히 변경하지 않으면 변경할 수있는 옵션이있는 이유는 무엇입니까?

다음은 모든 Firefox 특정 CSS를 포함하여 시연하기 위해 만든 코데펜입니다.

오래된: http://codepen.io/jtlr/pen/bpjft

새로운: http://codepen.io/jtlr/pen/ekjhh

도움이 되었습니까?

해결책

Firefox의 기본 자리 표시 자 스타일은 다음과 같습니다.

input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 0.54;
}

색상 스타일이 전혀 없으면 (참조입니다 http://hg.mozilla.org/mozilla-central/file/a07aebef20e7/layout/style/forms.css#l160). 방금 설정하면 이런 식으로 color 그리고 background 입력에 특별한 자리 표시 자 스타일이 없으면 설정 한 색상이 선택되지만 더 희미 해 보이게합니다.

따라서 자리 표시자를 완전히 재 형성하려면 불투명도를 1로 설정하십시오.

다른 팁

Firefox 19+에는 2 개의 콜론이 필요합니다 ..::

그래서 사용하십시오 ::-moz-placeholder

::- Moz-Placeholder Pseudo Element는 Firefox 19에서 더 이상 사용되지 않은 : -moz-placeholder pseudo-class를 대체했습니다.

반대로 :-moz-placeholder

: -moz-placeholder 의사 계급은 Firefox 19의 ::-Moz-Placeholder Pseudo Element에 찬성하여 더 이상 사용되지 않습니다.

작업 코드 펜 예제 -FF 만.

::-moz-placeholder {
  color:red;
}

그 외에도, 이것은 재산과 달리 선택기입니다. 그러므로,

p { :-moz-placeholder: #000000; }

부정확하다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top