Html 체크박스 정렬 - html chekeubagseu jeonglyeol

지난 프로젝트에 이어 이번 프로젝트에서도 체크박스 여러 개를 2개 이상의 행에 걸쳐 뿌려주는 화면을 개발했다.

그런데 체크박스 옆에 붙는 텍스트 길이가 제각각이다보니 css를 따로 잡아주지 않으면 생각보다 되게 꼴보기 싫게 화면이 나온다.

무슨 말이냐 하면 요렇게 나온다는 뜻 

지난번 프로젝트에서 같이 일했던 웹디자이너는 안타깝게도 요 부분을 못 잡겠다고 하셨고..

이번 프로젝트에서는 잠시 퍼블리셔가 들어와서 이 부분을 수정하시는 모습을 분명 봤던 것 같은데

놀랍게도 수정된 파일을 넘기지 않고 그냥 철수해버리셔서ㅋㅋㅋㅠㅠ 할 수 없이 내가 잡았다.

포인트는 label 태그가 inline 속성을 가진다는 점이라고 생각한다.

결과부터 말하자면 

label{ display:inline-block; width:100px; line-height:50px; }

cs

이런 식으로 display : inline-block; 속성을 선언해준 뒤에 원하는 width 와 height 값을 지정하고 나면

이렇게 일정한 간격을 두고 정렬된 것처럼 예쁘게 출력된다.

inline 속성을 가진 태그들은 줄바꿈을 수행하지 않고 한 줄에 옹기종기 모여있는 애들이다.

반대로 block 속성을 가진 태그들은 자기주장이 강해서 혼자 한 줄을 다 차지한다.

<span> 태그와 <p> 태그를 비교해서 생각해보면 한방에 와닿는다.

아래와 같이 작성한 후 화면을 보면

<span style="background-color: red"> this is span </span>

<p style="background-color: yellow"> this is p </p>

cs

이런 식으로 나오는 걸 볼 수 있다.

span 태그는 텍스트 길이만큼만 공간을 차지하는데 비해

p 태그는 무조건 한 줄을 차지하기 때문에 굳이 <br>을 끼워넣지 않아도 알아서 줄을 바꾼 후 span 밑에 출력된다.

이처럼 inline 속성을 가진 태그는 한 줄을 여러 태그와 공유하도록 되어 있기 때문에 

width나 height 값을 아무리 열심히 줘봤자 도통 먹히질 않는다.

하지만 block 속성 태그들은 한 줄을 독점하니 width든 height든 원하는 크기를 지정할 수 있다.

그래서 굳이 inline 속성 태그에 크기를 지정하려면 inline-block을 선언해줘야 가능하다.

//forums.mozilla.or.kr/viewtopic.php?t=7856

카페24 html - 체크박스와 텍스트 정렬하기

하바나스2016. 10. 4. 0:42

카페24 쇼핑몰 디자인스킨 전문 제작지원 하바나스 디자인입니다.

체크박스와 텍스트 정렬하기

카페24 쇼핑몰 스킨의 체크박스와 텍스트가 어긋나는 현상을 바로 잡는 방법입니다.


팝업창과 같이 "오늘하루 그만보기" 의 텍스트와 체크하는 체크박스가 어긋나서 짜증나는 경우가 있습니다.
이부분은 전문 퍼블리셔들도 크로스 브라우징에서도 맞추기 좀 어려운 부분이라고들 합니다.

여하튼 간단한 방법을 알아보면 이렇습니다.
일단 input박스와 텍스트를 하나의 라벨로 묶어 둡니다.
그래야 텍스트를 클릭하더라도 체크박스에 체크 표시가 들어오게 됩니다.
예>
<form name="pop_form1">
<label>
<div id="check"><input type="checkbox" name="chkbox1" value="checkbox" style="margin-right:5px;">오늘 하루동안 보지 않기</div>
<div id="close"><a href="javascript:closePop1();">닫기 X</a></div>
</label>
</form>

일반적인 css를 보게 되면
#check{ color:#fff; position:absolute; bottom:7px; left:10px; font:400 11px/15px 'Nanum Gothic','돋움'; }
#close{ position:absolute; bottom:7px; right:10px; font:400 11px/15px 'Nanum Gothic','돋움'; }
#close a { color:#fff;  }

체크박스와 클로즈 버튼에 대한 색상값이나 위치값을 주어 맞추게 됩니다.
그러나 체크박스는 텍스트와 일직선 상에 위치하지 않고 삐뚤어져 보이게 됩니다.

위의 이미지와 같이 정렬이 잘된 모습은 아닙니다.
같은 선상에서 보기 좋게 맞추려면..
input에 vertical-align css를 추가해주어 각각의 브라우져별로 적정하게 조정해주면 됩니다.
예)
#check input{ vertical-align:-3px; }

깔끔하게 정렬된 것을 확인하고 변경이 완료되었으면 저장 버튼을 클릭하시고 브라우져로 변경이 잘되었는지 확인합니다.

감사합니다.



Toplist

최신 우편물

태그