2012년 11월 22일 목요일

[상호작용-웹표준 교과서]7. 프레임 설정

1. 프레임의 개요

- 프레임(프레임 레이아웃)은 하나의 브라우저 화면에 복수의 페이지를 표시하는(윈도우를 분할한다) 기능을 말한다.
- 왼쪽에 메뉴가 되는 페이지를, 오른쪽에 메인 내용을 포함한 페이지를 표시하는 것이 일반적인 프레임 사용법이다.
- 먼저 내비게이션 자체의 사용성 관점에서는, 예컨대 왼쪽의 메뉴 페이지를 항상 표시해두면 다른 페이지로 이동이 편하다는 장점이 있다. 레이아웃의 관점에서는 윈도우 전체가 별도의 페이지로 바뀌지 않기 때문에 표시에 연속성이 있으며 사이트에 일체감이 생기는 장점이 있다.

2. 프레임 이용형의 문서형 정의(DTD)

- 프레임을 사용하는 경우 XHTML 1.0 에서는 'Frameset'문서형을 선언하고 문서형 정의(DTD)를 다음 같이 지정한다.
 - XHTML 1.1 에서는 프레임을 사용할 수 있는 DTD는 갖춰지지 않았기 때문에 프레임을 사용할 수 없다.

3. 프레임의 기본 구조

- 프레임의 기본구조를 XHTML 문서로 보면 다음과 같다.
- 프레임에서는 html 요소의 직접적인 자식 요소로 body 요소 대신 frameset요소를 설치한다. frameset 요소는 모든 프레임을 포함하기 때문에 '부모 프레임'이라 한다. 한편 부모 프레임 안의 '자식 프레임'은 frame 요소로 지정한다.

4. 프레임 분할(frameset 요소)

- 프레임 분할 방법을 지정하고 자식 프레임의 높이나 폭을 제어하려고 프레임의 최상위 요소인 frameset 요소를 사용한다. 앞서 말한 대로 프레임에서는 body 요소 대신 frameset 요소를 지정함에 주의하자.
- 'rows="400px, 3* ,1*" ' 이라 지정한 경우 먼저 첫 번째 자식 프레임에는 높이 '400px'이 확보되며 두번째와 세번째 자식 프레임에는 남은 높이가 '3:1(75%:25%)'의 비율로 분배된다.

- 네 종류의 레이아웃을 예로 프레임의 분할과 지정방법을 설명한다.

5. 자식 프레임 상세지정(frame 요소)

 - 자식 프레임(분할 뒤의 각 프레임) 상세 지정은 frame 요소로 지정한다. frame 요소는 빈 요소이기 때문에 <frame/> 서식으로 기술한다.

# 자식 프레임의 '표현' 지정

 - 자식 프레임의 마진이나 보더 등의 '표현'을 지정하려고 아래의 속성을 지정할 수 있다.

6. 링크의 대상 지정(target 속성)

- a 요소에 target 속성을 지정하면 특정 자식 프레임을 대상으로 링크된 페이지를 표시하거나 링크가 열리는 방식을 지정할 수 있다.
- 'upper'라는 식별자를 가진 자식 프레임에 'E.html'을 표시할 수 있다.
- 프레임을 해제하여 'F.html'을 윈도우 전체에 표시할 수 있다.

# 링크의 기본 대상 설정

- base 요소에 target 속성을 지정하면 링크의 기본 대상명을 설정할 수 있다.

- 모든 링크에 대해서 'main' 식별자를 가진 자식 프레임을 대상으로 표시할 수 있다.

- 모든 링크에 대해서 프레임을 해제하여 표시할 수 있다.

7. 프레임 대체내용(noframes 요소)

-  대부분의 시각계 브라우저가 지원하지만 텍스트 브라우저나 음성 브라우저 등은 지원하지 않는 경우가 많다. 시각계 브라우저에서도 프레임 기능을 사용하지 않음으로 설정하여 브라우징하는 사용자도 있다.
- 이같은 환경을 위해서 noframes 요소에 프레임의 대체내용을 지정해야 한다. noframes 요소는 frameset 요소의 마지막에 지정한다. 프레임을 표시할 수 있는 환경에서는  noframes요소의 내용은 표시되지 않는다.
- noframes 요소에는 최소한 다음과 같은 내용을 포함하는 것이 좋다. 프레임 비대응환경 대상의 페이지에의 링크를 포함하는 것이 포인트이다.

8. 프레임의 주의점

댓글 없음:

댓글 쓰기