Как вывести HTML-комментарий в Compojure / Hiccup? - PullRequest
14 голосов
/ 25 мая 2010

Я бы хотел, чтобы моя программа выводила следующий HTML-код:

<!--[if lt IE 8]><link rel="stylesheet" href="../blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->

Есть ли способ вывода литералов html-комментариев с помощью Hiccup?

Ответы [ 2 ]

18 голосов
/ 25 мая 2010

Просто вставьте их. Может быть, это немного обманывает, но это работает ...

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>
3 голосов
/ 25 мая 2010

Вы заинтересовались, поэтому я перечитал код: нет явной функции комментария - вы должны передать это как строковый литерал Но вы могли бы сделать что-то вроде:

(defn comment
  "Wrap the supplied HTML in a comment"
  [html]
  (str "<!--" html "-->"))

если вам действительно нужна функция (хотя это довольно упрощенно). Вы всегда можете добавить оператор IE if в качестве необязательного параметра.

...