2012년 11월 21일 수요일

[상호작용-웹표준 교과서]6. 오브젝트 삽입

@ 오브젝트(object)는 이미지, Java 애플릿, 동영상이나 음성 등의 플러그인 데이터, 다른 문서 등의 외부 리코드의 총칭이다. 이들 다양한 형식의 오브젝트를 삽입하는 데는 img 요소나 applet 요소, iframe 요소뿐 아니라 범용적인 요소인 object 요소로 구현할 수 있다.
@ object 요소는 HTML 4.0과 4.01 에서 처음 도입된 요소이며 앞으로 새롭게 개발될 어떤 형의 데이터든 문제없이 사용할 수 있게 설계되었다. 브라우저가 오브젝트를 표시, 구현하는 데 필요한 파일, 소스코드, 실행데이터, 파라미터 등 모든 것을 object 요소로 지정할 수 있다.
 - 비웹표준(브라우저 독자확장)의 요소를 포함해서 현재 일반적으로 사용되는 오브젝트 삽입을 위한 요소를 정리하면 다음과 같다.

1. 오브젝트 지정(object 요소)

- 오브젝트는 object 요소로 지정한다. 인라인 요소이기 때문에 body 요소의 직접적인 자식 요소로 삽입할 수 없고 블록 레벨 요소에 포함시킨 형태로 지정해야 한다.
- object 요소는 조금 특수한 요소이며 내용에는 param 요소이외에 블록 레벨 요소나 인라인 요소, 텍스트를 포함할 수 있다.

# 중요한 속성

#일반적인 속성

- iframe 요소의 내용 그대로 비대응환경에서 대체 내용으로 표시되기 때문에 적절한 내용을 적어두자. title 속성으로 보충 정보를 제공하는 것도 좋은 방법이다.

2. object 요소에 의한 img 요소 대체

- object 요소를 사용하여 이미지를 삽입하려고 다음과 같이 지정.

3. object 요소의 자식 요소에 의한 계층화 오브젝트

- object 요소에는 자식 요소를 넣을 수 있다(object 요소는 object 요소 자체를 포함한다.) object 요소의 자식 요소에 따라서 다음과 같은 메리트가 있다.

  • 우선된 오브젝트의 순서로 계층적으로 지정할 수 있다.
  • 특정 브라우저나 데이터형식에 대응하지 않는 브라우저에 대체 표시할 수 있다.
- 다음은 MPEG파일, PNG 파일, GIF 파일, 텍스트의 순서로 오브젝트를 계층화하여 지정한다.


4. object 요소에 의한 embed 요소 대체

- Macromedia Shockwave & Flash 등의 플러그인 데이터 삽입에는 종래 embed 요소가 사용되는 경우가 많았는데, embed 요소는 HTML이나 XHTML의 사양서에 정의 되지 않은 비표준적인 요소이다.
- 많은 브라우저에서 object 요소에 의한 플러그인 데이터 삽입에 대한 지원이 불충분하다. 따라서 과도기적인 방법으로 다음에 설명하는 embed 요소를 병용하는 방법이 일반적으로 사용된다.

# object 요소와 embed 요소 병용

- 플러그인 데이터 종류에 따라서는 object 요소에 의한 삽입이 지원되지 않는 경우가 있다.이 경우 embed 요소를 object 요소에 포함하면 계층화 오브젝트를 구현할 수 있다. 다만 XHTML의 어떤 문서형에도 적합하지 않음에 주의하자.
- 브라우저에 따라서는 object 요소에 포함된 텍스트 등의 대체내용이 embed 요소와 함께 표시되는 경우가 있다. 이때 object 요소에 대체내용을 포함하든지 embed 요소만으로 플러그인 데이터를 지정할 수 밖에 없다.
- embed 요소에 대해서는 빈 요소로 지정하는 경우와 지정하지 않는 경우의 두가지를 모두 볼 수 있는데, 이 예에서는 빈 요소로 지정하고 있다. 브라우저에 따라서는  object 요소에 포함된 텍스트 등의 대체 정보도 함께 표시하는 경우도 있기 때문에 대체 정보를 포함하지 않는 방법이 일반적으로 사용된다.

댓글 없음:

댓글 쓰기