the following do not work: .charsheet select.sheet-select-stat-used[text='option3'] + span::before { content: "test"; } .charsheet select.sheet-select-stat-used[value='2'] + span::before { content: "test"; } .charsheet select.sheet-select-stat-used[slectedIndex='2'] + span::before { content: "test"; } (tried with and without ' and " around the value) the same type of thing of course works fine with checkbox:checked or radio:checked when it comes to ::before { content: "something here"; } and any other element's [attribute=value] + sibling { } works fine, can't seem to figure out how to use the select's value Is there any way to do this in the CSS? EDIT: This charsheet select.sheet-select-stat-used + span::before { content: "test"; } works fine. Just can't seem to figure out how use the value in it.