테스트 사이트 - 개발 중인 베타 버전입니다

크로스브라우징 input text 글줄 정렬

· 13년 전 · 4236 · 13
글줄 정렬이 맞는 표현인지 모르겠는데;;
vertical-align 의 기준선을 일정하게 맞추는 방법이라고 생각하시면 될 것 같습니다.
 
저는 이 방법을 쓰기 전엔
 
<style>
input {padding:3px}
</style>
 
<input type='text' />
처럼 작업했었는데, 이게 브라우저 별로 글자가 써지는 높이가 미세하게 다르더란 겁니다.
리뉴얼된 sir 메인메뉴 같이 글자를 세로 정렬할 때도 문제가 있었구요.
 
그래서 이 방법 저 방법 찾아보고 궁리해보다가 다음과 같은 방법을 찾았습니다.
(더 좋은 방법이 있다면 당연히 제보해주세요.)
 
<style>
input[type=text] {height:30px;line-height:2.4em}
</style>
 
<input type='text' />
이렇게 작업하면 크로스브라우징 확인 시에도 텍스트의 세로 정렬 기준선이 일정하게 나온답니다.
ie6 까지 고려하면
 
<style>
input[type=text] {height:30px;line-height:2.4em}
.textbox {height:30px;line-height:2.4em !important;line-height:2.1em}
</style>
 
<input type='text' class='textbox' />
처럼 작업하시는 게 더 좋습니다.
 
line-height:2.4em !important;line-height:2.1em
에서 앞에 속성에 !important 를 주면 뒤에 같은 속성이 나와도 우선적으로 적용되는 것은 아시죠?
근데 ie6 에서는 !important 를 무시하고 뒤의 새로 나오는 같은 속성 값이 적용됩니다.
* 핵을 안 쓰고 !important 만으로 ie6 에 대응할 수 있다는 겁니다.
ie6에서는 line-height 를 0.3em 적게 줄 때가 있는데 이건 아직 테스트를 더해봐야 될 거 같습니다. ㅠ
 
더 자세한 팁은 웹표준 강좌 때 확실하게 정리해서 찾아뵐께요 ㅎㅎㅎ

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 13개

13년 전
ㅊㅊ이 없네요
13년 전
토크게시판에서 팁자료실로 옮겼습니다. 눌러주세요 ㅎ;;
스타핵 언더바핵을 가급적이면 사용 안하는게 맞지만 !important 가 무시되는 상황도 있습니다.
부득이하게요.. 거의 대부분이 margin 값과 padding 값이 안맞을 때 많이 발생하더라구요 ㅠ
아 그리고 line-height 로 잡는부분이 거의 모든 브라우저에서 맞추기 제일 좋습니다.
ie7 과 오페라 에서 나오는것이랑 ie8과 크롬 ie9 에서 나오는게 또 서로 상이하죠..
IE6이 !important를 무시하고 뒤에 재정의된 속성을 렌더링 하는 버그 ;ㅂ;
IE6을 반드시 처리해야할 상황이라면 (CC)Conditional Comment를 통하는 것을 추천합니다;
CC를 통해 css를 따로 로드하는 방법도 있지만
http://html5boilerplate.com
boilerplate의 방법으로 <html> 태그에 CC를 이용해 IE 에 맞는 클래스를 주는 방법을 살펴봐 주세요.

그렇지만 요구사항에 IE6이 무조건 있어야 한다가 아니라면 과감하게 IE6은 버리는 것이
IE6을 제거하는 길이겠죠 ㅎㅎㅎ
13년 전
ie6 버리기 전에 만든 놈 몇대 패버리고 싶네요. ㅎㅎㅎ
http://www.quirksmode.org/css/condcom.html 언급해주신 CC에 대한 내용입니다. 저도 처음엔 용어를 몰라서 뭔가 했는데 이거였군요. 감사합니다.
input[type=text] { padding:4px 8px 2px; font:normal 12px/1em dotum; }
정도로 줄 거 같습니다.
padding 으로 정렬을 하되. 글자의 line-height 는 글씨 크기와 같게 지정을 하면
아마도(?) 브라우저에서 같게 보이지 않을까 싶네요.
직접 브라우저 테스트를 하기 힘들어서 적어보기만 합니다.(Mac이라 IE가 ;)
13년 전
이 방법이 되면 좀더 정교하게 조절할 수 있겠네요. 강좌 쓸때 테스트해봐야겠습니다.
포지션을 이용하면 되지 않나요?;;
저는 핵, important도 안씁니다;;
1,2픽셀따윈 자기 합리화시면 됩니다..ㅡ/.,ㅡ;;;;
그게 남자임 -/_-)b
13년 전
포지션이요?
position 은 fixed absolute relative 를 주로 사용하는데.. (물론 static 이라던지 다른것도 있겠지만은..)
이걸로 line-height 를 다 잡을 수 있을까요?

현재 fact 는 input text 의 글자의 상하단의 위치가 (그러니까 입력받는 곳에서의 위치)서로 상이 하는 문제인데..

게시글 목록

번호 제목
12386
12385
12384
12380
12379
12378
12377
12376
12375
12374
12373
12372
12371
12369
368
12368
12367
12366
12365
12363
12362
12361
12360
12359
12358