>웹 프론트엔드 >CSS 튜토리얼 >숨겨진 요소 위로 마우스를 가져갈 수 없는 이유: CSS 가시성 수수께끼?

숨겨진 요소 위로 마우스를 가져갈 수 없는 이유: CSS 가시성 수수께끼?

DDD
DDD원래의
2024-11-12 06:40:02560검색

Why Can't I Hover Over a Hidden Element: A CSS Visibility Conundrum?

숨겨진 요소 문제 해결: CSS 가시성 딜레마

스포일러 숨기기 능력을 찾기 위해 다음을 활용하는 "스포일러" 클래스를 구현했습니다. CSS 가시성 속성. 그러나 여러분의 노력은 예상치 못한 장애물에 부딪혔습니다. 호버링을 하면 스포일러가 숨겨져 있습니다. 문제를 자세히 조사하고 해결 방법을 찾아보겠습니다.

호버링 투명성에 대한 과제

의도한 대로 CSS 가시성 속성을 사용하면 요소가 숨겨집니다. 그러나 중요한 주의 사항이 있습니다. 요소가 숨겨지면 호버 이벤트를 포함하여 어떤 입력도 받을 수 없는 상태가 됩니다. 숨겨진 요소 위로 마우스를 가져가면 스포일러가 노출되기 때문에 딜레마가 발생합니다.

창의적인 솔루션: 중첩된 요소

이 장벽을 극복하기 위해 우리는 영리한 중첩 기술을 사용하겠습니다. 스포일러 텍스트를 중첩된 요소를 사용하면 외부 컨테이너에서 마우스 오버 상호 작용을 유지하면서 선택적으로 대상을 지정하고 가시성을 전환할 수 있습니다.

업데이트된 CSS 및 HTML 구조

.spoiler span {
    visibility: hidden;
}

.spoiler:hover span {
    visibility: visible;
}
Spoiler: <span class="spoiler"><span>E.T. phones home.</span></span>

데모 및 Chrome 관련 개선

여기에서 라이브 데모를 확인하세요: http://jsfiddle.net/DBXuv/. 이제 마우스를 올리면 스포일러 텍스트가 표시됩니다.

Chrome 사용자의 경우 추가 CSS 규칙을 사용하면 접근성이 향상됩니다.

.spoiler {
    outline: 1px solid transparent;
}

이 개요는 숨겨진 요소의 미묘한 시각적 표시를 추가합니다. 이를 통해 사용자가 스포일러 콘텐츠를 더 쉽게 찾을 수 있습니다.

Chrome 개선으로 업데이트된 데모: http://jsfiddle.net/DBXuv/148/.

위 내용은 숨겨진 요소 위로 마우스를 가져갈 수 없는 이유: CSS 가시성 수수께끼?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.