모바일 사파리 (iPhone)에서 텍스트 영역 내부 그림자 제거


152

기본적으로 Mobile Safari는 텍스트 영역을 포함한 모든 입력 필드에 맨 위 내부 그림자를 추가하는 것 같습니다. 그것을 제거하는 방법이 있습니까?

흰색 배경이 있으면 특히 추한 것입니다.

답변:


340

이 CSS 스타일을 추가하면 :

-webkit-appearance: none;

26
이 체크 박스, 라디오 버튼을 숨기는 때문에, 입력 타입 체크 박스, 라디오 버튼 선택기에이 속성을 추가 할 때 조심)
— 자인 셰이크

14
답변 Lyon 주셔서 감사합니다. Btw를 사용하는 가장 좋은 방법은에 적용하는 것 textarea, input[type="text"], input[type="submit"]입니다.
— jgthms

8
잊지 마세요 input[type="password"].
— Nick Pyett

7
잊지 마세요 [type="email"]!
— Willster

35
사용하는 입력 유형에 따라 not 연산자를 사용하는 것이 더 쉬울 수 있습니다.input:not([type=checkbox]):not([type=radio])
— Justin Fisher

30

CSS 스타일을 추가하는 동안

-webkit-appearance: none;

작동합니다. 모든 것을 제거합니다. 대신 이것을 시도 할 수 있습니다 :

box-shadow: none !important;

이렇게하면 아래쪽 화살표를 유지할 수 있습니다.


6
상자 그림자 속성을 추가해도 작동하지 않습니다. iOS의 Safari에서는 여전히 내부 그림자가 표시됩니다.
— silentmouth

22

쉬운 해결책은 다음과 같습니다.

input[type=text] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

9

때로는 스타일 시트 appearance: none;에 문제가 생겼을 때이를 고칠 수있는 방법이 있습니다 caret. 가장 좋은 방법은 코드를 다시 작성하고 코드의 일부가 무엇인지 알아내는 것입니다.none

사용하기 전에 caret다른 스타일에 문제가 생길 수 있음을 알아야합니다

-webkit-appearance: caret;
   -moz-appearance: caret;
     -o-appearance: caret;
        appearance: caret;

참고 : 사용 none, caret최적이 아니다.



-31

태그 의 background및 borderCSS 속성 중 하나 를 설정해 input도 작동하는 것 같습니다.

이 시도:

<style>
input {
    background: #ccc;
    border: none;
}
</style>

<form>
First name: <input type="text"/><br />
Last name: <input type="text" />
</form>

9
부정확하고 오도합니다. 게시하기 전에 올바른 장치에서 코드를 테스트하십시오 ...
— Ariel

정말 잘못된 대답, 그것에 대해 아무것도 OP가 묻는 것입니다
— Jacta
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.