Nie można określać stylów wstawianych dla pseudoelementów.
Dzieje się tak dlatego, że pseudoelementy, takie jak pseudoklasy (patrz moja odpowiedź na this other question), są zdefiniowane w CSS przy użyciu selektorów jako abstrakcji drzewa dokumentu, którego nie można wyrazić w HTML. Z kolei atrybut inline style
jest określony w kodzie HTML dla określonego elementu.
Ponieważ style inline może nastąpić tylko w HTML, będą one miały zastosowanie tylko do elementu HTML, które zostały zdefiniowane na, a nie do żadnych pseudo-elementów generuje.
Tak na marginesie, główną różnicą pomiędzy pseudo-elementów i pseudo-klas w tym aspekcie jest to, że właściwości, które są dziedziczone domyślnie will be inherited przez :before
i :after
od elementu wytwarzającego, natomiast style Pseudo-klasa po prostu nie mają zastosowania w ogóle. W twoim przypadku, na przykład, jeśli umieścisz text-align: justify
w atrybucie stylu wstawianego dla elementu td
, zostanie on odziedziczony przez td:after
. Ograniczeniem jest to, że nie można zadeklarować td:after
z atrybutem stylu inline; musisz to zrobić w arkuszu stylów.
Czy trzeba go inline ? – Scrimothy
Nie można używać wbudowanych stylów do kierowania pseudo-klas lub pseudo-elementów. –
Prawdopodobny duplikat [Pseudo-klas CSS ze stylami wstawianymi] (http://stackoverflow.com/questions/5293280/css-pseudo-classes-w-inline-styles) – Champ