기본적으로 Javascript를 허용하지 않는 직장 Sharepoint 환경에서 .html 문서를 작성해야 한다는 관점에서 저는 "아, 그리고 다크 모드를 전환하는 버튼을 추가하세요. 감사합니다!"
이것은 상사가 "단 하나의 DIV라도 게으름이다"와 동일시하는 우리 정책 문서의 "유효하고 접근 가능한 의미 HTML" 문구에 더해 상황을 아무리 말해도 조금 까다롭게 만들었습니다.
@media(선호하는 색상 구성: 어두운)
반대 방법으로 토글 대신 미디어 쿼리를 사용하여 각 사용자의 밝은/어두운 시스템 선호도에 맞게 페이지 스타일을 지정하는 것이 좋습니다. 응답은 "좋아요. 그래도 토글을 켜두세요."였습니다. 좋습니다. 덜 만들려고 노력하여 더 많은 작품을 만들었습니다.
Light/Dark 모드를 제어하려면 CSS 변수와 체크박스 입력/레이블 방법이 필요하다는 점을 이미 언급했지만 :checked ~ *는 여전히 입력 뒤에 오는 요소에만 영향을 미치므로 배경 스타일을 전환하기 어렵습니다.
첫 번째 해결책은 모든 것 바로 아래에 위치한 일반 DIV를 사용하는 것이었습니다. 상사가 이를 발견하고 제거하라고 할 때까지 작동했습니다. 한 가지 다행스러운 점은 호환성 지원 범위가 브라우저의 90% 이상인 한 최신 HTML/CSS를 사용해도 괜찮다는 것입니다.
:has()를 사용하면 도움이 됩니다!
구현되기 전에 상위 요소를 다시 타겟팅하기 위해 제안된 이 CSS 구문을 처음 봤을 때 어떤 용도로 유용할지 확신할 수 없었습니다. 이제 솔루션을 찾다가 다시 한 번 접하게 되었는데, 'BODY에 한번 해보면 어떨까?'라는 생각이 들었습니다.
즉시 효과가 있었고 더 빨리 시도하지 않은 것에 대해 자책했습니다! 제가 최종 결정한 관련 CSS는 다음과 같습니다.
* { /* LIGHT mode */ --tcolor: #000; --bgcolor: #FFF; --lcontent: "DARK"; --bgimage: linear-gradient(rgba(255,255,255,0.5),rgba(255,255,255,0.5)), url(INSERT_SEASONAL_BACKGROUND); --sbgcolor: rgba(255,255,255,0.75); --alink:blue; --avisited:purple; } body:has(#d:checked), body:has(#d:checked) * { /* DARK mode */ --tcolor: #FFF; --bgcolor: #000; --lcontent: "LIGHT"; --bgimage: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)), url(INSERT_SEASONAL_BACKGROUND); --sbgcolor: rgba(0,0,0,0.75); --alink:lightblue; --avisited:#8467D7; } @media (prefers-color-scheme: dark) { * { /* DARK mode */ --tcolor: #FFF; --bgcolor: #000; --lcontent: "LIGHT"; --bgimage: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)), url(INSERT_SEASONAL_BACKGROUND); --sbgcolor: rgba(0,0,0,0.75); --alink:lightblue; --avisited:#8467D7; } body:has(#d:checked), body:has(#d:checked) * { /* LIGHT mode */ --tcolor: #000; --bgcolor: #FFF; --lcontent: "DARK"; --bgimage: linear-gradient(rgba(255,255,255,0.5),rgba(255,255,255,0.5)), url(INSERT_SEASONAL_BACKGROUND); --sbgcolor: rgba(255,255,255,0.75); --alink:blue; --avisited:purple; } } body { /* base element under control of mode */ color:var(--tcolor); /* match text color to mode */ background-image:var(--bgimage); /* match opacity overlay to mode */ background-repeat: no-repeat no-repeat, space no-repeat; background-size:auto 100vh; margin:-1ex; } label[for="d"]::after {content: var(--lcontent);} /* DARK or LIGHT text */ section{ /* main interaction area */ margin:0 auto; background-color:var(--sbgcolor); padding:1ex; padding-top:0; height:fit-content; max-height:96.2vh; overflow-y:scroll; scrollbar-color:rgba(128,128,128,0.5) var(--sbgcolor); } li:nth-of-type(even){ /* subtle horizontal lines */ background-color:rgba(128,128,128,0.1); } summary:hover,summary:focus-visible,a:hover,a:focus-visible { /* match mouseover or */ background-color:var(--bgcolor); /* keyboard focus to mode */ } a:link {color: var(--alink)} /* match link */ a:visited {color: var(--avisited)} /* colors to mode */
섹션 스크롤 막대 색상을 중립으로 유지하기 위해 rgba(128,128,128,0.5)를 사용하여 치트를 한 번 수행했습니다.
최종 결과(Sharepoint에 의해 제한되지 않음)는 다음과 같습니다.
여기 보너스로 속성을 사용하여 수동으로 추가한 해당 페이지의 스키마 데이터 구조가 있습니다. 또 다른 작업에는 sans-javascript가 주어졌습니다.
이제 자바스크립트 없이 오디오 사운드를 트리거하는 방법을 알아내면 됩니다!
제한된 환경에서 일한 경험과 효과가 있었던 점과 그렇지 않았던 점을 자유롭게 댓글로 남겨주세요!
위 내용은 DIVLESS Pure CSS를 사용하여 다크 모드 전환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

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

이 튜토리얼은 Smart Forms 프레임 워크를 사용하여 전문적인 JavaScript 양식을 작성하는 것을 보여줍니다 (참고 : 더 이상 사용할 수 없음). 프레임 워크 자체를 사용할 수 없지만 원칙과 기술은 다른 형태의 건축업자와 관련이 있습니다.

이 기사는 Envato Market에서 사용할 수있는 최고의 PHP 양식 빌더 스크립트를 탐색하여 기능, 유연성 및 설계를 비교합니다. 특정 옵션으로 다이빙하기 전에 PHP 양식 빌더가 무엇인지, 왜 사용하는지 이해해 봅시다. PHP 양식

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

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

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


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

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

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음
