How can I replace text with css using a method like this:
.pvw-title img[src*="IKON.img"] { visibility:hidden; }
Instead of ( img[src*="IKON.img"]
), I need to use something that can replace text instead.
I have to use [
]
to get it to work.
<div class="pvw-title">Facts</div>
I need to replace "Facts".
This worked for me with inline text. Tested in FF, Safari, Chrome and Opera
Using a pseudo element, this method doesn't require knowledge of the original element and doesn't require any additional markup.
Unlike what I see in every single other answer, you don't need to use pseudo elements in order to replace the content of a balise with an image
FactsI had an issue where I had to replace the text of link but couldn't use javascript nor could I directly change the text of a hyperlink as it was compiled down from XML. Also, I couldn't use pseudo elements, or they didn't seem to work when I had tried them.
Basically, I put the text I wanted into a span and put the anchor tag underneath it and wrapped both in a div. I basically moved the anchor tag up via css and then made the font transparent. Now when you hover over the span, it "acts" like a link. A really hacky way of doing this, but this is how you can have a link with different text...
This is a fiddle of how I got around this issue
My HTML
My CSS
The CSS will need to change based off your requirements, but this is a general way of doing what you are asking.
Edit: Can someone tell me why this was downvoted? My solution works...
This implements a checkbox as a button which shows either Yes or No depending on its 'checked' state. So it demonstrates one way of replacing text using CSS without having to write any code.
It will still behave like a checkbox as far as returning (or not returning) a POST value, but from a display point of view it looks like a toggle button.
The colours may not be to your liking, they're only there to illustrate a point.
The HTML is:
...and the CSS is:
I've only tried it on Firefox, but it's standard CSS so it ought to work elsewhere.
Or maybe you could wrap 'Facts' round a
<span>
as follows:Then use: