Syntax

css
:disabled {
  /* ... */
    

Examples

This example shows a basic shipping form. It uses the JavaScript change event to let the user enable/disable the billing fields.

html
<form action="#">
  <fieldset id="shipping">
    <legend>Shipping address</legend>
    <input type="text" placeholder="Name" />
    <input type="text" placeholder="Address" />
    <input type="text" placeholder="Zip Code" />
  </fieldset>
  <fieldset id="billing">
    <legend>Billing address</legend>
    <label for="billing-checkbox">Same as shipping address:</label>
    <input type="checkbox" id="billing-checkbox" checked />
    <input type="text" placeholder="Name" disabled />
    <input type="text" placeholder="Address" disabled />
    <input type="text" placeholder="Zip Code" disabled />
  </fieldset>
</form>
    
css
input[type="text"]:disabled {
  background: #cccccc;
    

JavaScript

Toggle the disabled input fields when the checkbox is clicked

js
const checkbox = document.querySelector("#billing-checkbox");
const billingItems = document.querySelectorAll('#billing input[type="text"]');
checkbox.addEventListener("change", () => {
  billingItems.forEach((item) => {
    item.disabled = !item.disabled;
    

Result

Check/un-check the checkbox to change the styling on the billing fields.

Specifications

Specification