Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

The difference between quoted and unquoted attribute selector in CSS

I was wondering what is the difference between quoted and unquoted attributes in css selectors and does that have any effect on performance.

input[type="text"]

/

input[type=text]

Thanks in advance

like image 220
Emre Türkiş Avatar asked Jun 02 '15 11:06

Emre Türkiş


People also ask

What is CSS attribute selector?

The CSS Attribute Selector is used to select an element with some specific attribute or attribute value. It is an excellent way to style the HTML elements by grouping them based on some specific attributes and the attribute selector will select those elements with similar attributes.

How many types of attributes are there in CSS?

The Seven Different Types. Attribute selectors are case-sensitive by default (see case-insensitive matching below), and are written inside brackets [] . There are seven different types of matches you can find with an attribute selector, and the syntax is different for each.

What is selector attribute and value?

The [attribute|="value"] selector is used to select elements with the specified attribute, whose value can be exactly the specified value, or the specified value followed by a hyphen (-). Note: The value has to be a whole word, either alone, like class="top", or followed by a hyphen( - ), like class="top-text".

What is the CSS selector for an a tag containing the title attribute?

The [attribute~=value] selector is used to select elements with an attribute value containing a specified word.


1 Answers

The above are the same. The quotes are optional for identifiers, but must be used when it is a string.

Some common examples of being a string include:

  • Containing a space ()
  • Beginning with a digit (0-9)
  • Containing a hyphen after a digit

Here's the full spec of an identifier:

In CSS, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [a-zA-Z0-9] and ISO 10646 characters U+00A0 and higher, plus the hyphen (-) and the underscore (_); they cannot start with a digit, two hyphens, or a hyphen followed by a digit. Identifiers can also contain escaped characters and any ISO 10646 character as a numeric code (see next item). For instance, the identifier "B&W?" may be written as "B\&W\?" or "B\26 W\3F".


Further reading: http://www.w3.org/TR/css3-selectors/#attribute-selectors

like image 90
Mooseman Avatar answered Nov 15 '22 06:11

Mooseman