천

<div>을 iframe처럼 만들기

· 2023-05-03 (수) 18:26:26 · 5978 · 5

Div 요소를 이용하여 iframe과 유사한 동작을 구현할 수 있습니다. 다음은 div 요소를 사용하여 iframe과 같은 동작을 하는 예시 코드입니다.

<!-- HTML 코드 -->

<div class="frame" data-src="https://www.example.com"></div>

 

<style>

/* CSS 코드 */
.frame {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 비율에 맞게 설정 */
  height: 0;
}

.frame > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.frame > iframe {
  border: none; /* 기본적으로 iframe에 적용되는 테두리 제거 */
}

</style>

 

<script>

// JavaScript 코드
document.addEventListener("DOMContentLoaded", function () {
  const frames = document.querySelectorAll(".frame");

  frames.forEach((frame) => {
    const src = frame.dataset.src;
    const iframe = document.createElement("iframe");
    iframe.src = src;
    frame.appendChild(iframe);
  });
});

</script>

 

위 코드에서는 div 요소에 data-src 속성을 추가하여 원하는 URL을 지정합니다. 이후 JavaScript 코드에서는 DOMContentLoaded 이벤트가 발생했을 때 frame 클래스를 가진 모든 div 요소를 선택하고, 각 div 요소에 해당하는 URL을 가져와 iframe 요소를 생성하여 삽입합니다. 이 때, iframe 요소의 속성으로 src를 지정해줍니다.

CSS 코드에서는 padding-bottom 속성을 이용하여 div 요소의 높이를 0으로 설정한 후, 가로 세로 비율을 유지하기 위해 비율에 맞는 padding 값을 지정합니다. 이후 position: absolute 속성을 이용하여 div 내부의 모든 요소를 절대 위치로 배치하고, width와 height 속성을 모두 100%로 설정하여 div 요소와 내부 요소의 크기가 동일하도록 만들어줍니다. iframe 요소는 기본적으로 적용되는 테두리를 제거하기 위해 border: none 속성을 추가해줍니다.

이렇게 구현한 div 요소를 iframe처럼 사용할 수 있습니다.

|

댓글 5개

좋아요. 감사 합니다.
강추!!
감사합니다.
좋은팁 감사합니다.
도움받고 갑니다

음.. 이게 결국 iframe 아닌가요?

댓글을 작성하시려면 로그인이 필요합니다.

퍼블리셔팁

1,282건

퍼블리싱과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
CSS 25-12-27 조회 782
CSS 25-12-17 조회 564
CSS 25-12-07 조회 690
CSS 25-11-20 조회 613
CSS 25-11-15 조회 692
기타 25-09-21 조회 819
CSS 25-09-09 조회 1,080
CSS 25-09-05 조회 1,076
CSS 25-08-16 조회 1,125
기타 25-07-23 조회 979
CSS 25-07-17 조회 1,301
CSS 25-06-27 조회 1,224
CSS 25-06-12 조회 1,161
CSS 25-06-09 조회 1,197
CSS 25-06-07 조회 1,006
25-01-30 조회 1,176
HTML 25-01-23 조회 1,434
CSS 24-10-21 조회 1,338
23-12-10 조회 1,831
HTML 24-02-12 조회 1,269
CSS 24-02-11 조회 1,580
CSS 24-01-28 조회 1,520
HTML 23-11-05 조회 2,261
기타 23-10-21 조회 1,507
CSS 23-09-04 조회 2,098
HTML 23-07-13 조회 1,923
CSS 23-06-14 조회 1,820
23-05-04 조회 4,223
23-05-03 조회 5,979
23-06-01 조회 2,241