I used ng-bind-html like this
<p ng-bind-html="{{content.content}}">
</p>
but it didn't appear. But when I inspect, they are there. How come? It's not css issue.

The ngBindHtml directive takes an expression and evaluates it. So you should not put it into {{ }}. Try this:
<p ng-bind-html="content.content"></p>
Curly braces are used for expression interpolation, so its result is not an expression any more. However ngBindHtml needs an expression, because it passes this expression to some sanitize services to clean up from unsafe content.