1. css
  2. /properties
  3. /appearance

appearance

Definition

In CSS, the appearance property is used to control the appearance of certain elements, such as buttons and form elements. The appearance property allows you to override the default styling of these elements and apply a custom appearance.

Examples

select {
  appearance: none;
  background-color: white;
  color: black;
  border: 1px solid grey;
  border-radius: 5px;
  font-size: 16px;
  padding: 10px 20px;
}

In this example, the appearance property is set to none, which means that the default appearance of the button element will be overridden. The other styles, such as background-color, color, and border-radius, are used to define the custom appearance of the button.

select {
  appearance: none;
  background-color: white;
  color: black;
  border: 1px solid grey;
  border-radius: 5px;
  font-size: 16px;
  padding: 10px 20px;
}

In this example, the appearance property is set to none, which means that the default appearance of the dropdown list element (select) will be overridden. The other styles, such as background-color, color, and border-radius, are used to define the custom appearance of the dropdown list.

input[type="checkbox"] {
  appearance: none;
  background-color: white;
  border: 1px solid grey;
  border-radius: 5px;
  width: 20px;
  height: 20px;
}

input[type="checkbox"]:checked {
  background-color: blue;
}

In this example, the appearance property is set to none, which means that the default appearance of the checkbox element will be overridden. The other styles, such as background-color and border-radius, are used to define the custom appearance of the checkbox. The :checked pseudo-class is used to apply a different style to the checkbox when it is checked.

Values

ValueDescription
noneSpecifies that the element should not have a custom appearance. This is the default value.
autoSpecifies that the element should have a default appearance, as determined by the user agent.
buttonSpecifies that the element should have a button-like appearance.
checkboxSpecifies that the element should have a checkbox-like appearance.
menulistSpecifies that the element should have a dropdown list-like appearance.
menulist-buttonSpecifies that the element should have a button-like appearance with a dropdown list.
radioSpecifies that the element should have a radio button-like appearance.
searchfieldSpecifies that the element should have a search field-like appearance.
textfieldSpecifies that the element should have a text field-like appearance.

Best Practices

  • Use the animation property in conjunction with the @keyframes rule to specify the keyframes for the animation.
  • Specify a clear purpose for the animation and consider how it will enhance the user experience.
  • Use appropriate timing and duration for the animation. Avoid making the animation too long or too short.
  • Use the animation-timing-function property to fine-tune the speed curve of the animation.
  • Use the animation-delay property to control the timing of the animation.
  • Use the animation-iteration-count property to specify the number of times the animation should repeat.
  • Use the animation-direction property to specify the direction in which the animation should play.
  • Use the animation-fill-mode property to specify how the animation should apply styles to the element before and after the animation.
  • Use the animation-play-state property to pause or resume the animation.

Browser Compatibiility

ChromeFirefoxSafariInternet ExplorerMicrosoft EdgeOpera
YesYesYesNoYesYes