Interactivity

appearance

Controlling the native appearance of UI controls.

Overview

ClassDeclarations
appearance:noneappearance: none;
appearance:autoappearance: auto;
appearance:menulist-buttonappearance: menulist-button;
appearance:textfieldappearance: textfield;
appearance:buttonappearance: button;
appearance:searchfieldappearance: searchfield;
appearance:textareaappearance: textarea;
appearance:checkboxappearance: checkbox;
appearance:menulistappearance: menulist;
appearance:listboxappearance: listbox;
appearance:meterappearance: meter;
appearance:progress-barappearance: progress-bar;
appearance:<value>appearance: <value>;

Examples

Remove default styling

Use appearance:none to remove the browser's native control styling before applying your own visual treatment.

<select class="appearance:none">  <option>Yes</option>  <option>No</option></select>
Generated CSS
@layer utilities {  .appearance\:none {    appearance: none  }}

Restore native appearance

Use appearance:auto when a variant should return to the platform control instead of the custom one.

<select class="appearance:none appearance:auto@sm">  <option>Native on larger screens</option></select>

Keep semantics intact

appearance:none only changes rendering. Keep using the correct form element and accessible label.

<label>  Sort  <select class="appearance:none">    <option>Newest</option>  </select></label>

Apply conditionally

Apply styles based on different states using selectors and conditional queries.

<select class="appearance:none:hover appearance:auto@print appearance:auto@sm">...</select>


© 2026 Aoyue Design LLC.MIT License
Trademark Policy