Twitter bootstrap.css has such a code:
:-moz-placeholder {
color: #999999;
}
:-ms-input-placeholder {
color: #999999;
}
::-webkit-input-placeholder {
color: #999999;
}
The question is about :: in front of -webkit-input-placeholder. Why two :: and what is that for?
::denotes a pseudo-element (e.g.::beforeand::after).:denotes a pseudo-class (e.g.:linkand:hover). It’s just a naming convention to differentiate between pseudo-elements and pseudo-classes. IE8 and below do NOT support the::convention.Here’s an explanation of these two directly from the W3C spec: http://www.w3.org/TR/CSS21/selector.html#pseudo-elements