Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

content property in CSS

In some template I see that an arrow that created with CSS. something like this:

div:after{
    content:"\f107";
}

this code display an arrow like this :

enter image description here

what is this code? where I can find more codes?

like image 307
Mohsen Safari Avatar asked Nov 26 '13 07:11

Mohsen Safari


3 Answers

Using content property embeds a virtual content inside an element, it is used with a pseudo :before or :after, so if you use :before, the content will be embedded before.

From MDN :

The content CSS property is used with the ::before and ::after pseudo-elements to generate content in an element. Objects inserted using the content property are anonymous replaced elements.

Content property can hold any character, number, entities. For more information, you can refer an article here.

Also, you can get an handy converter here.


This method is also used by font-awesome - Example and other related svg font embedding libraries, where you can simply call classes to the elements and the fonts will be embedded virtually.


Also, just a side information, content generated using CSS content property is inline by default, also this is rendered inside the element and not outside..

like image 58
Mr. Alien Avatar answered Oct 24 '22 12:10

Mr. Alien


It's an escaped unicode character.

like image 45
knittl Avatar answered Oct 24 '22 12:10

knittl


As other answers have explained, the CSS rule uses the content property to insert a character by its Unicode number.

However, the character used is U+F107 PRIVATE USE CHARACTER-F107. This means that it has no meaning except by private agreements and should not be used in public information interchange. Unfortunately, some “awesome” tricks use Private Use code points to insert graphic symbols. This means that unless a very specific font, with some symbols assigned to those code points is used, a generic symbol of an unknown character appears.

So it is much safer to use an image instead, in the content proper.

like image 39
Jukka K. Korpela Avatar answered Oct 24 '22 11:10

Jukka K. Korpela