인라인 프레임을 사용하면 외부 소스의 콘텐츠를 페이지에 포함시킬 수 있습니다.
일반적으로 "iframe"이라고하는 인라인 프레임은 HTML5에서 허용되는 유일한 유형의 프레임입니다. 이러한 프레임은 본질적으로 페이지에서 잘라내는 섹션입니다. 페이지에서 벗어난 공간에서 외부 웹 페이지로 피드 할 수 있습니다. 본질적으로 iframe은 웹 페이지 바로 내부에 설정된 다른 브라우저 창입니다. Google지도 또는 YouTube의 동영상과 같은 외부 콘텐츠를 포함해야하는 웹 사이트에서 일반적으로 사용되는 iframe을 볼 수 있습니다.
그 인기있는 웹 사이트는 모두 embed 코드에서 iframe을 사용합니다.
IFRAME 요소를 사용하는 방법
이 요소는 HTML5 전역 요소와 여러 다른 요소를 사용합니다. 4 개는 HTML 4.01의 속성입니다.
- - 프레임 소스의 URL
- - 창 높이
- - 창의 너비
- - 창 이름
HTML5에서는 3 가지가 새로 추가되었습니다.
- srcdoc - 프레임 소스의 HTML. 이 속성은 src 속성의 모든 URL보다 우선합니다
- 샌드 박스 - 프레임 창에서 허용되거나 허용되지 않아야하는 기능 목록
- seamless - 사용자 에이전트가 iframe이 부모 문서의 보이지 않는 부분처럼 렌더링되어야한다는 것을 알립니다.
간단한 iframe을 만들려면 소스 URL과 너비 및 높이를 설정해야합니다.
iframe 설정에 픽셀 값을 사용하지 않을 수도 있지만 백분율을 사용하기로 결정할 수도 있습니다.
화면 크기에 따라 크기가 달라지는 반응 형 웹 사이트 를 구축 하는 경우 이러한 비율이 중요 할 것입니다.
HTML 4.01에서는 유효하지만 HTML5에서는 더 이상 사용되지 않는 속성도 있습니다. 현재 대부분의 웹 사이트가 HTML5 +를 사용하고 있기 때문에 이러한 속성은 사용하고 싶지 않은 속성입니다 (하지만 일부 기존 문서에서 볼 수 있습니다).
- - 대신 A 요소를 사용하여 설명에 연결하십시오.
- 대신 CSS float 속성을 사용하십시오.
- allowtransparency - 대신 CSS background 속성을 사용하여 ifram을 투명하게 만듭니다.
- 대신 경계 CSS 속성 사용
- marginheight - 대신 CSS margin 속성을 사용하십시오.
- marginwidth - 대신 CSS margin 속성을 사용하십시오.
- 대신 CSS overflow 속성을 사용하십시오.
IFRAME 브라우저 지원
IFRAME 요소는 모든 최신 브라우저에서 지원됩니다.
- 기계적 인조 인간
- 크롬
- Firefox
- Internet Explorer 2 이상
- iOS / Safari 모바일
- Netscape 7 이상
- Opera 3 이상
- 원정 여행
위 목록에 버전 번호가 표시되지 않으면 해당 브라우저의 모든 버전에서 지원됩니다.
주의 할 점은 모든 브라우저가 IFRAME 요소를 지원하지만 HTML5 기능 중 일부는 여전히 제한적으로 지원된다는 것입니다.
- 오버플로를 사용하여 스크롤을 끄는 것은 신뢰할 수 없습니다. iframe에 스크롤 막대를 표시하지 않으려면 계속 스크롤 속성을 사용해야합니다.
- 현재 srcdoc, sandbox 및 seamless 속성은 모든 브라우저에서 지원되지 않습니다.
Iframe과 연결
iframe에 이름이나 ID를 주면 A 요소의 속성을 사용하여 해당 프레임에서 링크를 가리킬 수 있습니다. 그런 다음 사용자가 링크를 클릭하면 현재 창 대신 참조 된 iframe 내부에서 열립니다.
직접 해보십시오. 웹 페이지에 다음을 입력하십시오.
IFRAME에서 열린 문서에 대상이 설정되어 있지 않으면 모든 링크가 상위 문서와 동일한 iframe에서 열립니다.
이 기능을 사용 하여 하나의 IFRAME에있는 링크 가 동일한 페이지의 다른 IFRAME의 내용을 변경하도록 할 수 있습니다.
IFrame 및 보안
IFRAME 요소는 그 자체로 귀하 또는 귀하의 독자에게 보안 위험이 아닙니다.
불행히도 iframe은 악의적 인 웹 사이트에서 방문자의 컴퓨터를 감염시킬 수있는 콘텐츠를 페이지에 표시하지 않고 사용할 수 있기 때문에 나쁜 평판을 얻고 있습니다. 이는 보이지 않는 IFRAME과 악의적 인 코드를 설정 한 스크립트를 가리키는 링크를 가짐으로써 수행됩니다. 사용자는 링크를 클릭하여 아무 일도 일어나지 않았기 때문에 링크가 끊어 졌다고 생각하지만 스크립트는 보이지 않는 곳에 출발했습니다.
보이지 않는 IFRAME을 웹 페이지에 삽입하여 효과적으로 웹 사이트를 봇넷으로 만드는 컴퓨터 바이러스도 있습니다. 그들은 SQL 주입 및 다른 공격을 통해이를 수행 할 수 있습니다.
귀하의 웹 페이지에 IFRAME을 포함시킬 때 기억해야 할 점은 귀하의 사용자는 귀하가 링크하는 모든 사이트의 컨텐츠만큼 안전하다는 것입니다. 사이트가 신뢰할 수 없다고 생각하는 이유가 있다면 어떤 식 으로든 링크하지 말고 그 내용을 IFRAME에 포함시키지 마십시오. 그러나 iframe 내에서 자신의 페이지에 링크해도 사용자 또는 사용자의 보안 위험이 발생하지 않습니다.
Jennifer Krynin의 원본 기사입니다. Jeremy Girard의 11/7/16에 편집 됨