I\'m using Prism and its working well for CSS:
p { color: red }
but
To solve issue 1):
You can use the unexcaped-markup plugin
This is how it works:
To ignore first and last returns I would recommend using the normalize whitespace plugin.
To solve issue 2):
There exists no languages-html see http://prismjs.com/index.html#languages-list. HTML is a HyperTextMarkupLanguage so its included in language-markup. Thats what you have to use.