웹 프론트엔드 HTML 튜토리얼 문제_HTML/Xhtml_웹페이지 제작을 다루는 웹페이지 드롭다운 목록 및 div 레이어 선택

문제_HTML/Xhtml_웹페이지 제작을 다루는 웹페이지 드롭다운 목록 및 div 레이어 선택

May 16, 2016 pm 04:43 PM
div iframe select 요소 웹페이지 액자 질문


HTML의 선택 요소에 대한 질문은 여러 곳에서 제기되었습니다. 얼마 전 한 프로젝트에서 선택 요소에 대한 두 가지 작은 문제에 직면했습니다. 첫 번째는 더 유명한 문제입니다. 일반 div 플로팅 레이어는 IE6에서 선택 요소를 덮을 수 없습니다. 먼저 다음과 같은 예제가 제공됩니다. 참고: FireFox 및 IE7에서 보면,
HTML의 선택 요소에 대한 문제는 여러 곳에서 제기되었습니다. 얼마 전 한 프로젝트에서 선택 요소에 대한 두 가지 작은 문제에 직면했습니다.
관련 기사: div 레이어가 플래시 레이어로 가려지는 문제에 대한 해결 방법
첫 번째는 더 유명한 것입니다. 일반 div 플로팅 레이어는 IE6에서 선택 요소를 덮을 수 없습니다. 먼저 다음 예제가 제공됩니다.
문제_HTML/Xhtml_웹페이지 제작을 다루는 웹페이지 드롭다운 목록 및 div 레이어 선택
참고: FireFox 및 IE7에서 보면 결과는 동일합니다. 플로팅 레이어 A, B, C는 모두 정상적으로 구현될 수 있습니다. 즉, 아래의 선택 요소를 덮습니다. 그러나 IE6에는 세 가지 상황이 있습니다. 플로팅 레이어 A는 여전히 정상입니다. 플로팅 레이어 B의 주요 부분은 선택 요소를 부분적으로 덮지만 플로팅 레이어 3의 테두리는 선택 요소를 덮을 수 없습니다. 요소 전혀. 이러한 현상이 나타나는 이유는 IE6에서는 브라우저가 select 요소를 윈도우 수준 요소로 취급하기 때문입니다. 이때 div나 기타 일반 요소는 z-index를 아무리 높게 설정해도 select 요소를 덮을 수 없습니다. 위의 예와 같이 창 수준 요소의 iframe에 대한 선택을 커버합니다. 플로팅 레이어 C는 단지 div 플로팅 레이어입니다. 여기서는 자세히 설명하지 않겠습니다. 플로팅 레이어 B의 구조만 살펴보겠습니다.
플로팅 레이어 B

div를 사용하여 실제 필수 콘텐츠 div와 iframe 요소를 함께 배치합니다. 해당 스타일은 다음과 같습니다.
.containDiv{위치: 절대; 상단: 140px; 60px; .maskIframe{위치: 절대; 왼쪽: -1px; z-색인: -1;border:1px solid #000;height:50px;width:50px;_height:48px;_width:48px;} .mainDiv{배경:#EBAC3B;너비:50px;높이:50px;}
플로팅 레이어 B는 iframe을 사용하여 containDiv의 절대 위치를 지정하고 z-index: -1;을 설정한 다음 실제로 콘텐츠가 포함된 아래의 mainDiv가 iframe을 덮도록 허용합니다. 이때 iframe은 선택 영역을 덮을 수 있습니다. 요소 및 간접적으로 mainDiv는 선택 요소도 포함합니다. 하지만 플로팅 레이어 B는 여전히 완벽하지 않습니다. 그 이유는 여기서 플로팅 레이어 B의 테두리가 iframe 테두리를 사용하기 때문입니다. iframe 자체는 선택 항목을 덮을 수 있지만 해당 테두리는 그렇지 못하므로 플로팅 레이어 B의 상황이 나타납니다.
플로팅 레이어 A는 이 문제를 해결하고 이상을 달성합니다. iframe을 mainDiv 위쪽, 아래쪽, 왼쪽 및 오른쪽보다 1px 더 크게 만든 다음 mainDiv에 테두리를 제공한다는 점을 제외하면 기본적으로 플로팅 레이어 B와 동일합니다. , 플로팅 레이어 테두리는 mainDiv에서 제공되고 전체 mainDiv와 테두리는 iframe 위에 있으므로 이상적인 효과가 달성됩니다!
select의 두 번째 문제는 IE에서 옵션을 동적으로 생성하는 문제입니다. 위의 두 번째 질문의 예를 보면 (FF 전용) 링크를 클릭하면 FF 아래의 선택 요소에 3개의 옵션 요소를 추가할 수 있지만, (범용) 링크를 클릭하면 IE에서는 작동하지 않습니다. IE 및 FF 아래의 선택 요소에 3개의 옵션 요소를 추가할 수 있습니다. 그 이유는 select 요소의 innerHTML 속성을 통해 option 요소에 첫 번째 링크가 추가되기 때문입니다.
document.getElementById("addSelect").innerHTML = "ABC";
FF에서는 문제가 되지 않지만 IE에서는 이 방법을 사용하여 선택 요소에 옵션 하위 요소를 추가할 수 없습니다. 대신 두 번째 링크에서 제공하는 방법을 사용해야 합니다.
document.getElementById("addSelect").options.add(new Option("A","A",false,true));
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Edge 브라우저에서 웹페이지를 데스크톱에 바로가기로 보내는 방법은 무엇입니까? Edge 브라우저에서 웹페이지를 데스크톱에 바로가기로 보내는 방법은 무엇입니까? Mar 14, 2024 pm 05:22 PM

Edge 브라우저에서 웹페이지를 데스크톱에 바로가기로 보내는 방법은 무엇입니까?

네트워크 연결은 정상인데 브라우저가 웹페이지에 접근할 수 없는 이유 네트워크 연결은 정상인데 브라우저가 웹페이지에 접근할 수 없는 이유 Feb 19, 2024 pm 03:45 PM

네트워크 연결은 정상인데 브라우저가 웹페이지에 접근할 수 없는 이유

웹페이지가 열리지 않는 경우 대처 방법 웹페이지가 열리지 않는 경우 대처 방법 Feb 21, 2024 am 10:24 AM

웹페이지가 열리지 않는 경우 대처 방법

웹페이지의 이미지를 로드할 수 없으면 어떻게 해야 합니까? 6가지 솔루션 웹페이지의 이미지를 로드할 수 없으면 어떻게 해야 합니까? 6가지 솔루션 Mar 15, 2024 am 10:30 AM

웹페이지의 이미지를 로드할 수 없으면 어떻게 해야 합니까? 6가지 솔루션

웹 페이지에서 PHP를 여는 방법 웹 페이지에서 PHP를 여는 방법 Mar 22, 2024 pm 03:20 PM

웹 페이지에서 PHP를 여는 방법

Excel 테두리를 설정하는 방법에 대한 대중 과학 Excel 테두리를 설정하는 방법에 대한 대중 과학 Mar 20, 2024 am 10:30 AM

Excel 테두리를 설정하는 방법에 대한 대중 과학

iframe 스크롤 동작 모니터링 iframe 스크롤 동작 모니터링 Feb 18, 2024 pm 08:40 PM

iframe 스크롤 동작 모니터링

jQuery가 양식 요소 값을 얻을 수 없는 문제를 해결하는 방법 jQuery가 양식 요소 값을 얻을 수 없는 문제를 해결하는 방법 Feb 19, 2024 pm 02:01 PM

jQuery가 양식 요소 값을 얻을 수 없는 문제를 해결하는 방법

See all articles