찾다
웹 프론트엔드CSS 튜토리얼세부 사항 요소 스타일과이를 해결하는 방법

세부 사항 요소 스타일과이를 해결하는 방법

이전에는 간단한 확장 가능한 컨텐츠 블록을 생성하려면 JavaScript 또는 복잡한 CSS 해결 방법이 필요했습니다. HTML을 수정하는 것도 번거롭게 될 수 있습니다. 이제<details></details> 그리고<summary></summary> 요소 ( "공개 위젯"형성)는 이것을 크게 단순화합니다. 예를 들어 FAQ를 위해 직장에서 광범위하게 사용합니다.

일반적인 스타일 문제 해결

하는 동안<details></details> 그리고<summary></summary> 본질적으로 확장/붕괴 기능을 제공하면 최적의 프리젠 테이션을 위해서는 여전히 CS가 필요할 수 있습니다. 스타일이 없으면 두 가지 주요 문제가 발생합니다.

Issue 1:<summary></summary> 커서

그만큼<summary></summary> 요소는 대화식으로 기본적으로 예상 포인터 대신 텍스트 선택 커서로 기본값을 얻습니다.

문제 2 : 중첩 된 블록 요소<summary></summary>

내부의 중첩 블록 레벨 요소 (예 : 제목)<summary></summary> 인라인이 아닌 화살표 아래에 나타납니다.

CSS 솔루션

이를 해결하려면이 스타일을 CSS 재설정에 추가하십시오.

 세부 사항 요약 {
  커서 : 포인터;
}

세부 사항 요약> * {
  디스플레이 : 인라인;
}

각 문제와 솔루션을 자세히 살펴 보겠습니다.

사용자 정의<summary></summary> 커서

커서는 의도 된 상호 작용을 시각적으로 반영해야합니다. 기본 텍스트 커서 켜기<summary></summary> 기술적으로 정확하지만 (텍스트 선택 가능) 요소는 포인터보다 직관적이지 않습니다.

솔루션은 간단합니다.

 세부 사항 요약 {
  커서 : 포인터;
}

MDN Web Docs 및 Github를 포함한 많은 저명한 웹 사이트는 이미 공개 위젯 에이 스타일을 사용하고 있습니다. 기본 cursor: text 요약 텍스트의 선택 가능성을 반영 할 수 있지만, 대화 형 요소에는 일반적으로 포인터가 바람직합니다. 커서를 변경하는 것은 시각적 외관에만 영향을 미칩니다. 선택 가능성은 변경되지 않습니다.

중첩을 표시합니다<summary></summary> 내용 인라인

FAQ의 경우 종종 제목으로 질문을 마무리합니다 (예 :<h3></h3> ) 이내에<summary></summary> :

<details><summary><h3 id="자녀의-계획이-구현됩니까"> 자녀의 504 계획이 구현됩니까?</h3></summary><p> 예. 봄과 마찬가지로 사례 관리자는 학생들에게 연락 할 것입니다.</p></details>

이것은 몇 가지 장점을 제공합니다.

  • 일관성있는 스타일 : 다른 제목과 시각적 일관성을 유지합니다.
  • IE/Edgehtml 호환성 : 지원하지 않는 이전 브라우저에 대한 폴백을 제공합니다.<details></details> .
  • 접근성 : AIDS 보조 기술 내비게이션 (스크린 리더에 의한 해석은 아래에 설명 된대로 다를 수 있지만).

제목 대 버튼

그만큼<summary></summary> 요소는 버튼처럼 작동하지만 (암시 적으로 role=button 있습니다) 버튼과 달리 중첩 된 제목을 허용합니다. 이것은 충돌을 일으킨다 :

  • 제목은 항해를 원조합니다.
  • 버튼은 일반적으로 중첩 요소에서 의미론을 제거합니다.

스크린 리더 호환성은 여기서 일치하지 않습니다. NVDA와 Voiceover는 내부의 제목을 인식합니다<summary></summary> 그러나 턱은 그렇지 않습니다. 따라서 제목을 스타일링하는 동안<summary></summary> 가능하면, 그들의 의미 적 해석은 보장되지 않습니다.

인라인 스타일링

화살이 제목 위에 나타나는 것을 방지하려면 직접 중첩 된 요소에 인라인 스타일을 사용하십시오.<summary></summary> :

 세부 사항 요약> * {
  디스플레이 : 인라인;
}

포장 문제를 피하기 위해 인라인 inline-block 아닌 inline 을 사용하십시오. display: flex on<summary></summary> , 이것은 화살을 숨 깁니다.

보너스 : 인터넷 익스플로러 스타일 제외

IE와 이전 에지 버전은 지원하지 않기 때문에<details></details> 기능 쿼리를 사용하여 사용자 정의 스타일을 적용하지 마십시오.

 @supports not (-ms-ime-align : auto) {
  세부 사항 요약 {
    커서 : 포인터;
  }
  세부 사항 요약> * {
    디스플레이 : 인라인;
  }
  /* 다른<details> /<summary> 스타일 */
}</summary></details>

즉,이 블록은 완전히 무시합니다. Edgehtml은 또한 -ms-ime-align check로 인해 그것을 무시합니다. 매우 오래된 크롬 및 사파리 버전 (무시할만한 시장 점유율)도 기능 쿼리 지원이 부족합니다. @supports (details) 블록은 이상적이지만 브라우저 지원은 훨씬 적습니다.

결론

올바른 HTML 구조와 이러한 CSS 스타일을 사용하면 공개 위젯을 쉽게 사용자 정의 할 수 있습니다. 스타일링 중에 기억하십시오<summary></summary> 요소는 간단하며 중첩 제목의 스크린 리더 호환성을 고려해야합니다.

위 내용은 세부 사항 요소 스타일과이를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
스크린 독자를 탈취시킵니다. 액세스 가능한 양식 및 모범 사례스크린 독자를 탈취시킵니다. 액세스 가능한 양식 및 모범 사례Mar 08, 2025 am 09:45 AM

이것은 우리가 양식 접근성에 대해 한 작은 시리즈의 세 번째 게시물입니다. 두 번째 게시물을 놓친 경우 "사용자 초점 관리 : Focus-Visible"을 확인하십시오. ~ 안에

WordPress 블록 및 요소에 상자 그림자를 추가합니다WordPress 블록 및 요소에 상자 그림자를 추가합니다Mar 09, 2025 pm 12:53 PM

CSS Box-Shadow 및 개요 속성은 주제를 얻었습니다. 실제 테마에서 어떻게 작동하는지에 대한 몇 가지 예와 이러한 스타일을 WordPress 블록 및 요소에 적용 해야하는 옵션을 보자.

GraphQL 캐싱 작업GraphQL 캐싱 작업Mar 19, 2025 am 09:36 AM

최근에 GraphQL 작업을 시작했거나 장단점을 검토 한 경우 "GraphQL이 캐싱을 지원하지 않음"또는

첫 번째 맞춤형 전환을 만듭니다첫 번째 맞춤형 전환을 만듭니다Mar 15, 2025 am 11:08 AM

Svelte Transition API는 맞춤형 전환을 포함하여 문서를 입력하거나 떠날 때 구성 요소를 애니메이션하는 방법을 제공합니다.

고급스럽고 멋진 커스텀 CSS 스크롤 바 : 쇼케이스고급스럽고 멋진 커스텀 CSS 스크롤 바 : 쇼케이스Mar 10, 2025 am 11:37 AM

이 기사에서 우리는 스크롤 바의 세계로 뛰어들 것입니다. 너무 화려하게 들리지는 않지만 잘 설계된 페이지가 손을 잡고 있습니다.

쇼, 말하지 마십시오쇼, 말하지 마십시오Mar 16, 2025 am 11:49 AM

웹 사이트의 컨텐츠 프레젠테이션을 설계하는 데 얼마나 많은 시간을 소비합니까? 새 블로그 게시물을 작성하거나 새 페이지를 만들 때

Redwood.js 및 동물 군을 사용하여 이더 리움 앱 구축Redwood.js 및 동물 군을 사용하여 이더 리움 앱 구축Mar 28, 2025 am 09:18 AM

최근 Bitcoin의 가격이 20k 달러가 넘는 USD가 최근에 등반되면서 최근 30k를 끊었으므로 Ethereum을 만드는 데 깊이 다이빙을 할 가치가 있다고 생각했습니다.

NPM 명령은 무엇입니까?NPM 명령은 무엇입니까?Mar 15, 2025 am 11:36 AM

NPM 명령은 서버 시작 또는 컴파일 코드와 같은 것들에 대한 일회성 또는 지속적으로 실행되는 프로세스로 다양한 작업을 실행합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.