찾다
웹 프론트엔드CSS 튜토리얼콘텐츠를 전환하는 다른 (그리고 현대적인) 방법

마스터 현대 웹 컨텐츠 전환 기술 : 작별 인사 !

display: none

일을 잘하고 싶다면 먼저 도구를 연마해야합니다. The Different (and Modern) Ways to Toggle Content

—— 아브라함 마스 로우

친숙한 도구를 사용하는 데 익숙해지기 쉽습니다. 컨텐츠 전환의 경우 일부 JavaScript 코드가 보충 된 또는

를 사용하는 데 사용될 수 있습니다. 그러나 오늘날 웹 기술은 더 현대적이며 이제 다양한 콘텐츠 전환 방법을 포괄적으로 살펴볼 때입니다. 어떤 기본 API가 지원되는지, 장단점 및 모르는 세부 사항 (예 : 의사 요소 및 기타 불분명 한 내용).
요소, 대화 상자 API, Popover API 등을 논의 해 봅시다. 우리는 귀하의 요구에 따라 각 방법을 사용하는시기를 탐색 할 것입니다. 모달 또는 비 모달? 자바 스크립트 또는 순수한 HTML/CSS? 걱정하지 마십시오. 하나씩 설명하겠습니다.

요소
응용 프로그램 시나리오 : 콘텐츠 세부 사항을 독립적으로 또는 아코디언 스타일 구성 요소로 전환 할 수 있도록 액세스하기 쉬운 방식으로 컨텐츠 요약.

2024 년 12 월 12 일 업데이트 : Chrome 블로그의 새 기사는 애니메이션 갤러리와 부분적으로 열린 display: none (애니메이션에 opacity: 0를 사용할 수있는 옵션이 있습니다)를 포함하여

를 사용하는 몇 가지 흥미로운 방법을 보여줍니다.

릴리스 순서대로 및 <details></details> 요소는 JavaScript 또는 독특한 확인란 트릭을 사용하지 않고 컨텐츠를 처음으로 전환 할 수있는 시간을 표시합니다. 그러나 브라우저 지원이 부족하면 새로운 기능의 인기를 방해 할 것입니다. 특히이 기능에는 키보드 접근성이 부족합니다. 2011 년 Chrome 12가 출시 된 이후로 사용하지 않았다면 이해할 수 있습니다. 화가 나지 않거나 기분이 좋지 않습니까? <summary></summary> 다음은 핵심 사항입니다 :

는 JavaScript없이 잘 작동합니다 (타협없이).

비표준 의사 사전기를 사용하지 않고 마크를 숨길 수 있습니다. <summary></summary> 여러

요소를 연결하여 아코디언 스타일 구성 요소를 만들 수 있습니다.

그리고 ... 2024 년부터 완전한 애니메이션이 될 수 있습니다.

요소의 태그 당신이 필요로하는 것은 : 입니다 백그라운드에서 내용은 의사 요소로 래핑되며 2024 년부터 <details></details>를 사용하여 선택할 수 있습니다. 또한, <details></details>가 켜져 있는지 여부를 나타내는 pseudo element가 있으며,이를 사용자 정의 할 수 있습니다. calc-size 이것을 염두에두고, 배경에서는 실제로 다음과 같습니다.
<details><summary>内容摘要(始终可见)</summary>
  内容(单击摘要时切换可见性)
</details>

기본적으로 <details></details>를 켜려면 <details></details> 속성을 ​​에 추가합니다.이 속성을 open를 켜면 백그라운드에서 발생하는 것과 동일합니다. <details></details>

<details><summary><::marker></::marker>内容摘要(始终可见)</summary><::details-content>
      内容(单击摘要时切换可见性)
  </::details-content></details>
요소의 스타일 설정 솔직히 말해서 : 당신은 그 성가신 마크를 제거하고 싶을 수도 있습니다.
속성을 ​​ : 이외의 값으로 설정하여이를 수행 할 수 있습니다. 또는 마크를 수정할 수 있습니다. 실제로 다음 예제는 글꼴을 사용하여 다른 아이콘으로 대체하지만

는 많은 속성을 지원하지 않는다는 것을 기억하십시오. 가장 유연한 솔루션은 <summary></summary>의 내용을 요소로 래핑하고 CSS에서 선택하는 것입니다. display list-item

다중
...
를 사용하여 아코디언 스타일 구성 요소를 만듭니다 아코디언 스타일 구성 요소를 만들려면 속성을 ​​사용하여 여러 요소 이름을 지정하고 일치하는 값 (무선 버튼 구현 방법과 유사)을 사용하십시오.

래퍼를 사용하여 래퍼를 사용하여 수평 탭으로 바꿀 수도 있습니다. ::marker <summary></summary> CSS에서 Popover API를 사용하는 방법을 알고 싶다면 John Rhea의 기사를 확인할 수 있습니다.

summary {
  display: block; /* 或任何其他非 list-item 的值 */
}
JavaScript 기능을 추가하십시오 몇 가지 JavaScript 기능을 추가하고 싶습니까?
<details><summary>内容摘要</summary>
  内容
</details>

액세스 가능 <details></details> 요소 를 작성하십시오 일부 규칙이 준수되는 한 요소가 액세스 할 수 있습니다. 예를 들어,

는 기본적으로 a name이며, 이는 초점을 맞출 때 화면 리더가 콘텐츠를 발표 함을 의미합니다. <details></details> 또는

의 직접 자식 요소가없는 경우
details {

  /* 标记 */
  summary::marker {
    content: "\f150";
    font-family: "Font Awesome 6 Free";
  }

  /* <details>打开时的标记 */
  &[open] summary::marker {
    content: "\f151";
  }

  /* 因为 ::marker 不支持许多属性 */
  summary span {
    margin-left: 1ch;
    display: inline-block;
  }

}</details>
가 아닌 경우 사용자 에이전트는 일반적으로 시각적으로 그리고 보조 기술로 "세부 사항"으로 표시되는 태그를 만듭니다. 구형 브라우저는 그것이 첫 번째

하위 요소라고 주장 할 수 있으므로 첫 번째 자식 요소로 설정하는 것이 좋습니다.

또한,
<details name="starWars" open=""><summary>前传</summary><ul>
<li>第一集:幽灵的威胁</li>
    <li>第二集:克隆人的进攻</li>
    <li>第三集:西斯的复仇</li>
  </ul></details><details name="starWars"><summary>原版</summary><ul>
<li>第四集:新希望</li>
    <li>第五集:帝国反击战</li>
    <li>第六集:绝地归来</li>
  </ul></details><details name="starWars"><summary>续集</summary><ul>
<li>第七集:原力觉醒</li>
    <li>第八集:最后的绝地武士</li>
    <li>第九集:天行者的崛起</li>
  </ul></details>
는 버튼 역할을 갖기 때문에 에서 유효하지 않은 것은 에서 유효하지 않습니다. 여기에는 제목이 포함되어 있으므로
<div>
  <details name="starWars" open=""> ... </details><details name="starWars"> ... </details><details name="starWars"> ... </details>
</div>
스타일을 제목으로 할 수 있지만 실제로 에 제목을 삽입 할 수는 없습니다. 공간 제한으로 인해 나머지 모든 컨텐츠를 번역 할 수 없습니다. 다른 부품을 제공하면 번역하기 위해 최선을 다하겠습니다.

위 내용은 콘텐츠를 전환하는 다른 (그리고 현대적인) 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

CSS 그리드는 복잡하고 반응이 좋은 웹 레이아웃을 만드는 강력한 도구입니다. 디자인을 단순화하고 접근성을 향상 시키며 이전 방법보다 더 많은 제어를 제공합니다.

CSS Flexbox 란 무엇입니까?CSS Flexbox 란 무엇입니까?Apr 30, 2025 pm 03:20 PM

기사는 반응 형 설계에서 공간의 효율적인 정렬 및 분포를위한 레이아웃 방법 인 CSS Flexbox에 대해 설명합니다. Flexbox 사용을 설명하고 CSS 그리드와 비교하고 브라우저 지원 세부 사항을 설명합니다.

CSS를 사용하여 웹 사이트를 반응하게 만드는 방법은 무엇입니까?CSS를 사용하여 웹 사이트를 반응하게 만드는 방법은 무엇입니까?Apr 30, 2025 pm 03:19 PM

이 기사는 Viewport Meta 태그, 유연한 그리드, 유체 미디어, 미디어 쿼리 및 상대 장치를 포함하여 CSS를 사용하여 반응 형 웹 사이트를 만드는 기술에 대해 설명합니다. 또한 CSS 그리드 및 Flexbox를 함께 사용하여 CSS 프레임 워크를 권장합니다.

CSS 박스 크기 부동산은 무엇을합니까?CSS 박스 크기 부동산은 무엇을합니까?Apr 30, 2025 pm 03:18 PM

이 기사는 요소 치수 계산 방법을 제어하는 ​​CSS 박스 크기 속성에 대해 설명합니다. Content-Box, Border-Box 및 Padding-Box와 같은 값과 레이아웃 설계 및 형태 정렬에 미치는 영향을 설명합니다.

CSS를 사용하여 어떻게 애니메이션 할 수 있습니까?CSS를 사용하여 어떻게 애니메이션 할 수 있습니까?Apr 30, 2025 pm 03:17 PM

기사는 CSS, 주요 특성 및 JavaScript와 결합 된 애니메이션 작성에 대해 논의합니다. 주요 문제는 브라우저 호환성입니다.

CSS를 사용하여 프로젝트에 3D 변환을 추가 할 수 있습니까?CSS를 사용하여 프로젝트에 3D 변환을 추가 할 수 있습니까?Apr 30, 2025 pm 03:16 PM

기사는 3D 변환, 주요 속성, 브라우저 호환성 및 웹 프로젝트에 대한 성능 고려 사항에 대한 CSS 사용에 대해 논의합니다. (문자 수 : 159)

CSS에 기울기를 추가 할 수있는 방법은 무엇입니까?CSS에 기울기를 추가 할 수있는 방법은 무엇입니까?Apr 30, 2025 pm 03:15 PM

이 기사는 CSS 그라디언트 (선형, 방사형, 반복)를 사용하여 웹 사이트 비주얼을 향상시키고 깊이, 초점 및 현대적인 미학을 추가합니다.

CSS의 의사 요소는 무엇입니까?CSS의 의사 요소는 무엇입니까?Apr 30, 2025 pm 03:14 PM

기사는 CSS의 의사 요소, HTML 스타일을 향상시키는 데 사용 및 의사 급의 차이점에 대해 설명합니다. 실제 사례를 제공합니다.

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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

DVWA

DVWA

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

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.