Je voudrais citer la documentation officielle CSS | MDN pour référence future lors de l'examen des différences entre chacun:
INITIALE
Le mot-clé CSS initial applique la valeur initiale d'une propriété à un élément. Il est autorisé sur chaque propriété CSS et oblige l'élément pour lequel il est spécifié à utiliser la valeur initiale de la propriété.
Donc selon votre exemple:
em {
color:initial;
}
<p style="color:red!important">
this text is red
<em>
this text is in the initial color (e.g. black)
</em>
this is red again
</p>
Notez comment la propriété initiale conserve la propriété initialecolor
de l'élément.
UNSET
Le mot-clé CSS non défini est la combinaison des mots-clés initial et hérité. Comme ces deux autres mots-clés à l'échelle CSS, il peut être appliqué à n'importe quelle propriété CSS, y compris le raccourci CSS all. Ce mot clé réinitialise la propriété à sa valeur héritée si elle hérite de son parent ou à sa valeur initiale dans le cas contraire. En d'autres termes, il se comporte comme le mot clé inherit dans le premier cas et comme le mot clé initial dans le second cas.
Donc selon votre exemple:
em {
color:unset;
}
<p style="color:red!important">
this text is red
<em>
this text's color has been unset (e.g. red)
</em>
this is red again
</p>
Notez comment la propriété unset réinitialise simplement la color
propriété de l'élément.
EN CONCLUSION
L'idée est assez simple, mais dans la pratique, je conseillerais d'être prudent lorsqu'il s'agit de la compatibilité entre navigateurs pour les deux propriétés CSS ... c'est à partir d'aujourd'hui.