Yogesh Chauhan's Blog

How to switch dark and light themes using pure CSS?

in CSS on April 1, 2021

There are multiple ways to switch dark and light themes — mostly using scripts and few of them using CSS. Let me show you one quick and easy way to switch themes.

The idea is to get the value of use click. We can easily do that using a script but there’s a straightforward way to do the same using CSS too.

We can use checkbox and get the “values” when use clicks on it — we are not actually getting the values like we do using jQuery or JavaScript. CSS has away to check if the checkbox is checked or not using :checked selector.

We are not going to show the input element — it will be hidden. The label will be visible and when the user clicks on the label texts, the input will be updated and we will get what we want.

Let’s add some basic styles and make the container of hull height.

Finally, change the background and color on click (when the checkbox is checked)

To show user which mode is ON, we can add the ON and OFF after the label texts. Just like this:


Most Read

#1 How to check if radio button is checked or not using JavaScript? #2 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #3 How to add Read More Read Less Button using JavaScript? #4 How to uninstall Cocoapods from the Mac OS? #5 PHP Login System using PDO Part 1: Create User Registration Page #6 How to Use SQL MAX() Function with Dates?

Recently Posted

#Aug 2 How to progressively load images and add a blurry placeholder? #Aug 1 How to create a placeholder loader (throbber) using CSS? #Aug 1 What is Zdog? #Aug 1 How to add before after image effect using pure CSS? #Jul 31 Add animation to your skills bar using CSS #Jul 31 Use SwiperJS to create mobile touch sliders fast
You might also like these
How to make flexbox items of the same size?CSSMicroservices vs Monolithic ArchitectureMiscellaneousHow to hide a DIV on clicks outside of it using jQuery?jQueryWordPress: How to print ACF repeater field values?WordPressHow to create bouncing balls using HTML canvas and JavaScript?HTMLIntroduction to components and templates Part 3: Data bindingAngularList of all Pseudo Elements in CSSCSSHow to use GROUPING SETS to boost GROUP BY queries in Postgres?PostgresSorting Arrays in JavaScriptJavaScriptControl rendering using CSS content-visibility propertyCSS2 Ways We Can Write Multiple Line Commands in PHPPHPinclude, include_once, require, require_once in PHPPHP