> 웹 프론트엔드 > H5 튜토리얼 > HTML5 입력 자리 표시자 색상 수정 example_html5 튜토리얼 기술

HTML5 입력 자리 표시자 색상 수정 example_html5 튜토리얼 기술

WBOY
풀어 주다: 2016-05-16 15:47:51
원래의
1463명이 탐색했습니다.

Chrome은 input=[type=text] 자리표시자 텍스트 속성을 지원하지만 다음 CSS 스타일은 작동하지 않습니다.

CSS

코드 복사
코드는 다음과 같습니다.

input[placeholder], [placeholder], *[placeholder] {
color:red !important; }

HTML 입력문


코드 복사코드는 다음과 같습니다.


실행 결과 값은 여전히 ​​회색이며 색상: 빨간색은 효과가 없습니다. 자리표시자 텍스트의 색상을 변경할 수 있는 방법이 있나요? 브라우저에 jQuery 자리 표시자 텍스트 플러그인을 설치했지만 여전히 작동하지 않습니다. (!important는 IE7과 Firefox에서만 인식됩니다.)

답변:

toscho: 구현 방법에는 의사 요소, 의사 클래스, Notihing의 세 가지가 있습니다.
WebKit 및 Blink(Safari, Google Chrome, Opera15)는 의사 요소를 사용합니다.


코드 복사코드는 다음과 같습니다. 다음은 다음과 같습니다.
::-webkit-input-placeholder

Mozilla Firefox 4-18은 의사 클래스


코드 복사코드는 다음과 같습니다.
:-moz-placeholder


Mozilla Firefox 19는 다음을 사용합니다. 의사 요소



코드 복사코드는 다음과 같습니다.
::- moz-placeholder


IE10은 의사 클래스를 사용합니다



코드 복사 코드는 다음과 같습니다.
:-ms-input -placeholder


IE9 및 Opera12 이하 버전의 CSS 선택기는 자리 표시자 텍스트를 지원하지 않습니다. 의사 요소는 Shadow DOM에서 요소의 실제 역할을 수행한다는 점에 유의해야 합니다.

CSS 선택기

브라우저마다 CSS 선택기가 다르기 때문에 브라우저별로 별도의 설정이 필요합니다.



코드 복사코드는 다음과 같습니다.
::-webkit-input -placeholder { /* WebKit 브라우저 */
color: #999;
}
:-moz-placeholder { /* Mozilla Firefox 4~18 */
color: #999; }
::-moz-placeholder { /* Mozilla Firefox 19 */
color: #999;
}
:-ms-input-placeholder { /* Internet Explorer 10 */
color: #999;
}


Matt: 텍스트 영역(텍스트 상자 확장 가능) 스타일의 코드는 다음과 같습니다.



코드 복사
코드는 다음과 같습니다.
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
색상: # 636363;
}
입력:-moz-placeholder, 텍스트 영역:-moz-placeholder {
색상:
}


브릴아웃 .com: 입력 및 Textarea의 글꼴 색상은 모두 빨간색입니다. 모든 스타일은 서로 다른 선택기에 특정해야 하며 전체적으로 패키징해서는 안 됩니다. 그 중 하나가 실패하면 다른 스타일도 실패하기 때문입니다.



코드 복사
코드는 다음과 같습니다.
*::-webkit- 입력 자리 표시자 {
색상: 빨간색
}
*:-moz-자리 표시자 {
색상: 빨간색
}
*:-ms-input-자리 표시자 {
/* IE10 */
color: red;
}


James Donnelly: Firefox 및 IE에서는 일반 입력 텍스트 색상이 자리 표시자 색상보다 우선합니다.



코드 복사
코드는 다음과 같습니다.
::-webkit-input-placeholder {
색상: 빨간색 ; 텍스트 오버플로: 줄임표;
:-moz-placeholder {
색상: #acacac !important; 텍스트 오버플로:
}
::-moz -placeholder {
color: #acacac !important; text-overflow: ellipsis;
} /* 미래를 위해 */
:-ms-input-placeholder {
color: #acacac !important ; 텍스트- 오버플로: 줄임표
}


또 다른 좋은 방법이 있습니다:

코드 복사
코드는 다음과 같습니다.

입력::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
color: #666;
}
input:-moz-placeholder, textarea:-moz -placeholder {
color: #666;
}
input::-moz-placeholder, textarea::-moz-placeholder {
color:
}
input :-ms- input-placeholder, textarea:-ms-input-placeholder {
color:
}

마지막 항목은 온라인에서 발견되었습니다:

코드 복사
코드는 다음과 같습니다.

$('[placeholder]').focus( function() {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val(''); >input.removeClass( 'placeholder');
}
}).blur(function() {
var input = $(this);
if (input.val() == ' ' || input.val() == input.attr('placeholder')) {
input.addClass('placeholder')
input.val(input.attr('placeholder')); 🎜>}
}).blur();
$('[placeholder]').parents('form').submit(function() {
$(this).find('[ placeholder]').each(function() {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val ('');
}
})
});


이 코드를 호출하는 규칙은 먼저 Javascript를 로드한 다음 CSS를 사용하여 자리 표시자 속성을 수정하는 것입니다.



코드 복사코드는 다음과 같습니다.
form .placeholder {
color: #222;
font-size: 25px;
/* etc */
}


user1729061: CSS 및 자리 표시자 텍스트 없이도 동일한 효과를 얻을 수 있습니다.



코드 복사코드는 다음과 같습니다.
input type="text" value=" 자리 표시자 텍스트" onfocus="this.style.color='#000';
this.value='';" style="color: #f00;"/>
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿