The class
attribute assigns one or more classnames to an element.
Classnames are defined in a stylesheet or in a local <style> element.
Classes, i.e. classnames, are used to style elements.
A class
attribute on a <button> element.
The classnames style the button.
<style>
.pill {border-radius: 2px 25px !important; cursor:pointer; padding: 8px 10px;}
.turquoise {background:paleturquoise !important; }
.turquoise:focus, .turquoise:active, .turquoise:hover
{background:#95e0e0 !important; }
</style>
<button type="button" class="pill turquoise"
onclick="alert('Success! The process has started.')">Get Started!</button>
Classes (i.e. classnames) are used for styling elements.
Multiple classnames are separated by a space.
JavaScript uses classes to access elements by classname.
Tip: class
is a global attribute that can be applied to any HTML element.
<tag class="classname" />
Value | Description |
---|---|
classname | One or more space-separated classnames. A classname can only have alphanumeric characters with hypens (-) and underscores (_). Classnames are case-sensitive, but the convention is to use lower-case names. |
A class
attribute on an <input> tag.
Clicking the button toggles a classname that changes the border color.
<style>
.indigo { background: #f6f8ff; }
.red-border {border:3px solid orangered;}
</style>
<form>
<label for="location">Location</label>
<input class="indigo" type="text" id="location" />
</form>
<br />
<button type="button" onclick="toggle();">Toggle class</button>
<script>
let toggle = () => {
let element = document.getElementsByClassName("indigo")[0];
element.classList.toggle("red-border");
}
</script>
The class
attribute is a global attribute that can be applied to any element.
Click on any tag for an example of that element using an class
attribute.
Tag with class | Description |
---|---|
<a> | Creates a link (hyperlink) to another page |
<abbr> | Defines an abbreviation |
<address> | Specifies contact information for the page's author |
<article> | Defines a container for independent and self contained text |
<aside> | Creates a content area that is related to the primary content on a page |
<audio> | Creates a player for sound such as music, sound effects, or others |
<b> | Specifies bold text |
<blockquote> | Defines a section with text quoted from another source |
<body> | Specifies a container for the page's content with text, links, images, etc. |
<button> | Creates a clickable button that can contain text or an image |
<canvas> | Creates a graphics container where JavaScript can draw. |
<caption> | Specifies a caption for a table |
<code> | An element that is used to display computer code |
<col> | Specifies column properties for a table |
<dd> | Adds a description of a term or name to a <dl> element |
<del> | Marks deleted text |
<details> | A control that can show and hide additional details |
<div> | Creates a division or section on a page |
<dl> | Defines a description list |
<dt> | Adds a term or name to a <dl> element |
<em> | Marks text that needs emphasis |
<embed> | Creates a container for an external resource or plug-in |
<fieldset> | Groups related form elements and displays a box with a legend around these |
<figcaption> | Adds a caption to a <figure> (image) element |
<figure> | Displays self-contained content, usually an image |
<footer> | Defines a footer section on a page or a section of a page |
<h1>-<h6> | Defines text headings in 6 different sizes |
<header> | Defines a header section on a page or a section of a page |
<hr> | Creates a horizontal line |
<i> | Specifies italic text |
<iframe> | Creates a frame in which another web page can be embedded |
<img> | Creates an image |
<input> | Creates an input field in which data can be entered |
<ins> | Marks inserted text |
<kbd> | Specifies keyboard input often with CTRL, SHIFT, or ALT |
<label> | Creates a label or brief description before input elements |
<legend> | Defines a caption for a fieldset |
<li> | Defines a list item. Used in <ol> and <ul> elements |
<main> | Specifies a container for the main content of the page |
<mark> | Displays marked or highlighted text |
<meter> | Creates a measurement control, like a guage |
<nav> | Creates a container for navigation links |
<object> | Embeds external objects in a page, such as, audio, video, image, or PDF |
<ol> | Creates a numerically or alphabetically ordered list |
<optgroup> | Groups related options in a <select> element (dropdown control) |
<option> | Adds an item to a <select> element (dropdown control) |
<output> | Displays output results of a calculation |
<p> | Creates a paragraph |
<picture> | Adds images with a bit more flexibility than the <img> element |
<pre> | Displays pre-formatted text in fixed-width font -- usually computer code |
<progress> | Creates a control that displays progress of a task |
<q> | Creates a short quotation enclosed with quotation marks |
<samp> | Displays sample output from coumputer code |
<section> | Defines a piece of content that can stand on its own |
<select> | Creates a dropdown control |
<small> | Displays text in a smaller font size |
<span> | Container for one or more inline text elements |
<strong> | Indicates text that is important or with high urgency |
<sub> | Marks subscript text where characters display lower and in smaller font |
<summary> | Adds a heading to a <details> element. Clicking it toggles the details |
<sup> | Marks superscript text where characters display higher and in smaller font |
<svg> | Creates an vector image |
<table> | Creates an HTML table with rows and colums, much like a spreadsheet |
<tbody> | Marks the table body in an HTML table |
<td> | Creates an HTML table cell |
<textarea> | Creates a multi-line text input control, for example for messages |
<tfoot> | Marks the table footer in an HTML table |
<th> | Creates an HTML table header cell |
<thead> | Marks the header rows in an HTML table |
<time> | Creates a human-readable date/time item |
<tr> | Creates a table row with either <th> or <td> elements |
<u> | Specifies underlined text |
<ul> | Creates an unordered, bulleted list |
<var> | Defines its content as a variable |
<video> | Creates a video player on a page |
Here is when class
support started for each browser:
Chrome
|
1.0 | Sep 2008 |
Firefox
|
1.0 | Sep 2002 |
IE/Edge
|
1.0 | Aug 1995 |
Opera
|
1.0 | Jan 2006 |
Safari
|
1.0 | Jan 2003 |