레이아웃용 테이블을 사용하지 않으신 것과 메뉴목록을 목록태그로 처리하신 것은 매우 잘하셨습니다. 또, 모든페이지 하단의 '관련사이트 바로가기' 셀렉트 박스 우측에 'GO' 버튼을 마련해 두신것도 접근성 측면에서 매우 잘하셨습니다. 물론 알고 하셨겠죠? ^^a 다른분들을 위하여 왜 그래야 하는지 굳이 적습니다.
URL을 포함하고 있는 셀렉트박스에 'GO' 버튼이 없는경우, 화면을 볼 수 없는 사람들은 마우스 대신 키보드의 Tab 키를 이용하여 셀렉트 박스 안쪽의 옵션을 선택할 수 있는데 첫 번째 옵션으로 포커스를 옮김과 동시에 해당 페이지로 즉시 이동해 버리기 때문에 다른 옵션을 선택할 수 없는 심각한 접근성 문제가 있습니다. 이 설명이 이해가 되지 않는 분들은 Tab 키만을 이용하여 URL 이동기능이 있는 셀렉트 박스를 조작해 보시면 됩니다.
mman 님 말씀대로 제목은 제목태그로 올바르게 표현해주셔야 합니다. Validation 검사를 통과했다고 해서 웹 표준 이라고 부르기는 아직 이릅니다. 이는 기계적인 검사일 뿐이므로 그것에만 의존하는 것은 바람직하지 않고 우선 코드를 시멘틱 하게 만들어 주셔야 합니다. 제목에 제목태그를 사용하지 않은것은 분명 잘못된 문법입니다. 유효성 검사 엔진이 시멘틱한 코드까지 검증해주지는 않지요. 기계는 어떤부분이 제목인지 알 수 없기 때문입니다. 레이아웃용 테이블을 사용하더라도 Vlaidation 검사는 통과할 수 있습니다. 하지만 그것을 표준이라고 부르지는 않는것과 같습니다.
'웹 표준 사이트의 조건' = 'Validation 검사통과' + '시멘틱코드(의미적절한코드)'
다음은 의미전달이 없는 이미지의 사용 문제 입니다.
[img src="/images/include/top_bg.gif" width="754" border="0" alt=""]
이 이미지는 문서의 상단에 사용된 레이아웃용 투명(흰색?) 이미지 입니다. 간격을 벌이기 위해서 사용하셨던데 이런 표현방식보다 CSS 의 offset 속성(left, right, top, bottm) 이나 float 또는 text-align 속성을 사용하는 것이 바람직 합니다. 첨언하여 image 에는 width 값과 height 값을 모두 적어주는 것이 로딩속도에 도움이 됩니다. height 값을 빼먹으셨더라구요.
다음은 글로벌 메뉴의 접근성 문제 입니다.
[a href="/company/greeting.asp" title="회사소개"][span]회사소개[/span][/a]
텍스트로 처리된 a 태그에 title 속성을 또 넣어서 위와 같이 표현하신 부분은 오히려 접근성을 해칩니다. 스크린리더는 '회사소개' 라는 문장을 불필요하게 두번 읽어내야 하기 때문에 오히려 듣기 불편합니다. 아무 의미 없는 span 태그를 사용한 것도 문제 입니다. CSS를 이용하여 메뉴를 표현하려다 보니 사용하신 듯 한데 이는 span 태그가 없어도 가능 합니다.
다음은 인라인 스타일의 사용문제 입니다.
인라인 스타일과 인터널 스타일 방식을 적지않게 사용하셨는데 이는 CSS의 장점을 잘 살리지 못하는 방식 입니다. 유지보수가 쉬우려면 CSS 코드는 전부 HTML 문서 밖으로 빼내는 것이 좋습니다. 그렇게 되면 나중에 디자인만 일부 변경할 때 HTML 문서까지 열어볼 필요는 없어지겠지요.
CSS 코드가 증가할 때에는 아래와같이 여러개의 파일로 나누어 관리하는 방식도 나쁘지 않습니다.
default.css,
layout.css,
navigation.css,
content.css,
board.css,
print.css
등등..
다음은 서체문제.
px 단위를 사용하셨는데 em 또는 % 단위를 사용하시면 IE에서도 줌 브라우징이 가능해 집니다. px 단위를 사용하더라도 FF, OP 에서는 줌 브라우징 되지만 IE는 이를 지원하지 않더군요. 그래서 상대단위를 사용하는 것이 좋습니다. IE에서 'Ctrl+마우스휠' 굴려보시면 서체크기의 줌 브라우징 지원여부를 확인할 수 있습니다. 물론 px 으로 서체단위를 고정한 곳에서는 기능하지 않습니다.
이미지 아래쪽에 display:none 되어있는 대량의 텍스트.
본래 img 태그에 longdesc 라는 속성이 있습니다. alt 로 표현되기에는 너무많은 텍스트를 별도의 페이지에 넣어놓고 img 에서 링크해주는 속성입니다. 물론 시각이 정상인 사람은 해당사항이 없지만 스크린리더기는 longdesc 속성을 읽어줄 것입니다.(아직 국산 스크린리더기로 시도해본 바가 없어서 정말로 지원하는지 여부는 모릅니다. 하지만 표준은 이렇다고 말씀드리는 겁니다.) 개인적으로 저렇게 많은 텍스트는 이미지로 표현하지 말아야 한다고 생각합니다. 물론 이미지보다 조금 덜 이쁘기는 하겠지만. 예쁜여자랑 결혼하는 것보다 살림살이 잘하는 여자랑 결혼하는게 더 낫지 않습니까? ㅎㅎ
조금만 적으려고 했는데 코드를 직접 열어서 살펴 보다보니까 말이 조금 많았네요. 아예 모르는분이 이런글을 올렸다면 좀더 간략한 답변이 나왔을텐데 잘 아시는 분이신것 같고 조금만 개선하면 충분히 멋진 코드가 나올것 같아서 상세하게 적었습니다. 적다가 보니까 corenet 님의 업적을 깍아내린것 같이 되어 죄송하지만 표준을 위한 이런 노력은 높이 평가되어야 한다고 생각합니다.
그리고 접근성 문제와 관련된 드림위버 팁을 적어놓은 것이 있어 링크해드립니다.
http://naradesign.net/wp/2006/10/31/88/