What is caret symbol ^ used for in css when selecting elements?
a[href^="tel"]
(^
) means it selects elements that have the specified attribute with a value beginning/starting exactly with a given string.
Here it selects all the 'anchor' elements the value of href
attribute starting exactly with a string 'tel'
The carat "^" used like that will match a tags where the href starts with "tel" ( http://csscreator.com/content/attribute-selector-starts )
The circumflex character “^” as such has no defined meaning in CSS. The two-character operator “^=” can be used in attribute selectors. Generally, [attr^=val]
refers to those elements that have the attribute attr
with a value that starts with val
.
Thus, a[href^=tel]
refers to such a
elements that have the attribute href
with a value that starts with tel
. It is probably meant to distinguish telephone number links from other links; it’s not quite adequate for that, since the selector also matches e.g. <a href="tel.html">...</a>
but it is probably meant to match only links with tel:
as the protocol part. So a[href^="tel:"]
would be safer.