xhtml 에서 vertical-align??

국내에 웹 사이트들이 웹 표준을 지키고 OS나 브라우저와 관계 없이 접근성을 향상 시키기 위한 사이트 버그 신고 및 문제 해결을 위한 게시판입니다.
Post Reply
hiphapis
서포터즈
서포터즈
Posts: 179
Joined: 2005 02 25 16:03 12
Location: Heaven
Contact:

xhtml 에서 vertical-align??

Post by hiphapis »

질문내용을 바꾸겠습니다.
xhtml 1.1 trans 에서..
vertical-align 속성이 없나요..?

Code: Select all

height:35px;
padding-top:0px;
vertical-align:bottom;
width:193px;
text-align:right;
float:left;
padding-top으로 밀면, 레이어가 늘어나고..

애시당초, height를 정의안하고, padding으로 맞추면 간격이 맞아 떨어지긴 하는데..
IE에서 새로고침하면, 원래ㅤㅆㅓㅅ던 질문처럼 블랭크가 생겨서...

아래, 처음했던 질문입니다.
FF에서는 아무이상없는데..
IE에서는 새로고침을 하면, 화면 가운데 공백이 생기네요...

블럭이 늘어나는 부분에는

Code: Select all

padding-top:9px
가 있는데, 이 녀석을 빼면 새로고침해도 블럭이 안늘어나요..

그런데, 이 녀석을 빼면 레이아웃이 또 망가져서...;;
Last edited by hiphapis on 2006 05 04 01:35 36, edited 2 times in total.
웹표준이 취미인 개발자
God Has Not 4Got
http://hiphapis.net
User avatar
iLmoL
Posts: 16
Joined: 2004 10 21 06:04 07
Location: USA
Contact:

Post by iLmoL »

조금더 자세히 알려주실수 없으신가요
한국의 웹표준 꼭 찾아옵니다. :)
dece24
서포터즈
서포터즈
Posts: 83
Joined: 2006 05 04 02:44 45
Location: 대전
Contact:

Post by dece24 »

vertical-align 속성은 보통 인라인 형태의 요소(img, p, span, input, textarea, select ... 따위)와 예외적으로 td 태그에만 적용할 수 있고 div 태그와 같이 블럭 형태의 요소에 적용하는 속성이 아닙니다. vertical-align 속성은 기본적으로 인라인 형태의 요소 주변에 흐르는 이미지 또는 텍스트에 대한 수직위치를 정의 하기 위한 속성 입니다. 흔히 img 태그에 사용하는 경우가 많겠습니다.

div 태그를 CSS를 이용하여 td 처럼 렌더링 시키는 경우가 있을 수 있고 { display: table-cell; vertical-align: middle } 수직으로 중앙정렬 하는 것이 가능 하지만 이것을 가능하게 하려면 table 역할을 해주는 또 다른 부모 div 태그에 대하여 { display: table } 형식으로 설정해 주어야 합니다. 하지만 이러한 방식은 콘텐츠의 내용 분할과는 관계없이 디자인만을 위하여 무의미한 div 태그를 남발하게 된다는 점 때문에 추천되지 않습니다. 또한 이것은 대부분의 브라우저에서 작동하지만 IE 브라우저에서 지원하지 않는 기능이므로 섣불리 쉽게 사용할 수 도 없습니다.

그 밖에 수직정렬 기능을 구현하기 위한 몇 가지 팁이 있지만 모든 상황에 적용할 수 있는 것은 아니므로 다소 제한적이라 할 수 있습니다. 예를 들면 수직정렬 대상의 높이가 고정되어 있을 때만 수직 중앙정렬이 가능한 경우가 있고 앞서 이야기 한 것처럼 대부분의 브라우저에서 지원하는데 IE에서 지원하지 않기 때문에 사용하지 못하는 속성도 있습니다. 단지 이것이 배경이미지라면 center 속성 { background: url(sample.gif) no-repeat left center } 을 이용하여 수직으로 정렬하는 것이 자유롭습니다. 배경이미지라면 수직, 수평 모두 가운데 정렬 { background: url(sample.gif) no-repeat center } 하는 것도 가능 합니다.

div 태그가 이렇게 수직정렬을 지원하지 않는 것에는 나름의 이유가 있는 것으로 추측할 수 있습니다. 인지 공학적 측면에서 볼 때 콘텐츠의 배치는 좌측으로 부터 우측으로, 위로부터 아래로 나열되는 것이 바람직하기 때문에 이렇게 수직정렬을 지원하지 않는 것이 접근성이나 사용성을 높이는데 도움이 된다고 생각할 수 있고 필자는 그렇게 추측하고 있습니다. 위로부터 아래로 읽어 내려가는 습관을 고려하여 수직 중앙정렬보다 수직 상단정렬을 유도하고 권장하는 것이 W3C의 표준지침 이라고 생각하는 편이 좋겠습니다.
hiphapis
서포터즈
서포터즈
Posts: 179
Joined: 2005 02 25 16:03 12
Location: Heaven
Contact:

Post by hiphapis »

아, 그래서 이놈이 vertical-align 을 안먹었군요..
감사합니다 :)


만약, 제가 처리할려는 놈이 배경이미지로 처리가 가능한것이라면 문제가 안되는데..
이것은 text 입니다.
div 태그가 이렇게 수직정렬을 지원하지 않는 것에는 나름의 이유가 있는 것으로 추측할 수 있습니다. 인지 공학적 측면에서 볼 때 콘텐츠의 배치는 좌측으로 부터 우측으로, 위로부터 아래로 나열되는 것이 바람직하기 때문에 이렇게 수직정렬을 지원하지 않는 것이 접근성이나 사용성을 높이는데 도움이 된다고 생각할 수 있고 필자는 그렇게 추측하고 있습니다. 위로부터 아래로 읽어 내려가는 습관을 고려하여 수직 중앙정렬보다 수직 상단정렬을 유도하고 권장하는 것이 W3C의 표준지침 이라고 생각하는 편이 좋겠습니다.
제가 할려고 하는게, 인지 공학적 측면에서 봤을대 역행을 할려고 하는게 아니에요~

윗줄에는 text1이 있고
아랫줄에 text2가 있는데,,
이 두줄 사이의 간격을 조절해줄려는거죠.
(단순하게 말해서 입니다..오해없으시길)

다시 한번, 답변 감사드립니다 :)
웹표준이 취미인 개발자
God Has Not 4Got
http://hiphapis.net
hiphapis
서포터즈
서포터즈
Posts: 179
Joined: 2005 02 25 16:03 12
Location: Heaven
Contact:

Post by hiphapis »

결국 두 레이어를
하나로 합치고..line-height 와 padding으로 해결봤습니다..

늦은시간인데도 불구하고 관심가져주신 dece24 님 정말 감사합니다 :)
웹표준이 취미인 개발자
God Has Not 4Got
http://hiphapis.net
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest