Я хотел бы, чтобы моя программа произвела следующий HTML:
<!--[if lt IE 8]><link rel="stylesheet" href="../blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->
Существует ли способ произвести литералы комментария HTML с Отклонением?
Просто вставьте их. Возможно, это немного жульничество, но это работает...
user=> (html
[:html
[:head
"<!--[if lt IE 8]>"
[:link {:rel "stylesheet"
:href "../blueprint/ie.css"
:type "text/css"
:media "screen,projection"}]
"<![endif]-->"]])
<html><head><!--[if lt IE 8]><link href=\"../blueprint/ie.css\" media=\"screen,projection\" rel=\"stylesheet\" type=\"text/css\" /><![endif]--></head></html>
Вы меня заинтересовали, поэтому я перечитал код: здесь нет явной функции комментариев - вам придется передать это как строковый литерал. Но вы можете сделать что-то вроде:
(defn comment
"Wrap the supplied HTML in a comment"
[html]
(str "<!--" html "-->"))
, если вам действительно нужна функция (хотя это довольно упрощенно). Вы всегда можете добавить инструкцию IE if в качестве необязательного параметра.