HTML5 문서에 iframe이 있습니다. 유효성을 검사 할 때의 속성 iframe frameBorder이 더 이상 사용되지 않고 대신 CSS를 사용 하라는 오류가 표시 됩니다.
frameBorder="0"IE에서 테두리를 제거하는 방법을 알아낼 수있는 유일한 방법 이었기 때문에 여기 에이 속성이 있습니다. 저는 border:none;운없이 CSS를 사용해 보았습니다 . 이 문제를 해결할 수있는 방법이 있습니까?
감사.
답변
HTML 5는 frameborder, scrolling, marginwidth 및 marginheight (HTML 4.01에서 지원됨)와 같은 속성을 지원하지 않습니다. 대신 HTML 5 사양은 seamless 속성을 도입했습니다. seamless 속성을 사용하면 포함 문서의 일부로 렌더링되는 것처럼 인라인 프레임이 표시 될 수 있습니다. 예를 들어, 테두리와 스크롤바는 나타나지 않습니다.
frameborderHTML5부터 사용되지 않음값
1(기본값)은이 프레임 주위에 테두리를 그립니다. 이 값0은이 프레임 주위의 테두리를 제거하지만 대신 CSS 속성 테두리를 사용하여 테두리를 제어해야합니다.
위의 인용문처럼 CSS로 테두리를 제거 해야 합니다. 
인라인 ( style="border: none;") 또는 스타일 시트 ( iframe { border: none; }).
즉, .NET을 사용하지 않는 단일 iframe 제공 업체는없는 것 같습니다 frameborder="0". YouTube조차도 여전히이 속성을 사용하며 frameborder가 더 이상 지원되지 않을 때 iframe을 이전 버전과 호환되도록하는 스타일 속성도 제공하지 않습니다. 속성이 곧 아무데도 가지 않을 것이라고 말하는 것이 안전합니다. 이렇게하면 3 가지 옵션이 있습니다.
- 계속 사용하여 frameborder작동하는지 확인하십시오 (당분간).
- CSS를 사용하여 “올바른”작업 수행
- 둘 다 사용하십시오. 이것이 비 호환성 문제를 해결하지는 못하지만 (옵션 1과 마찬가지로), 기존의 모든 브라우저에서 작동합니다.
이 10 년 된 답변의 이전 상태에 관해서는 :
이 seamless속성은 짧은 시간 동안 (또는 일부 브라우저에서는 전혀 지원되지 않음) MDN이 더 이상 사용되지 않는 기능으로 나열하지도 않았습니다. 그것을 사용하지 말고 아래 설명에 혼동하지 마십시오.
답변
여기에 있는 다른 게시물 에 따라 가장 좋은 해결책은 CSS 항목을 사용하는 것입니다.
style="border:0;"
답변
때문에 frameborder속성이 IE에만 필요, 발리를 해결하기 위해 또 다른 방법이있다. 이것은 자바 스크립트 나 DOM 조작이 필요없는 가벼운 방법입니다.
<!--[if IE]>
   <iframe src="source" frameborder="0">?</iframe>
<![endif]-->
<!--[if !IE]>-->
   <iframe src="source" style="border:none">?</iframe>
<!-- <![endif]-->
답변
이것은 작동합니다
iframe{
    border-width: 0px;
}
답변
XHTML에 대상 속성을 붙여 Javascript로 유효성 검사기를 “속이는”기술에 대해 동일한 방법을 사용하는 것은 <a onclick="this.target='_blank'">어떻습니까?
- onsomething = “this.frameborder = ‘0’”
<iframe onload = " this.frameborder='0' "   src="menu.html"  id="menu"> </iframe>
또는 getElementsByTagName]("iframe")1 페이지에있는 모든 iframe을이 속성을 추가?
IE에서 아무것도 작동 하지 않는다는 것을 의미하는 작업을 수행했기 때문에 이것을 테스트하지 않았습니다 . 🙂 그래서 내가 그것을 분류하는 동안 … 🙂
