2010-01-25 2 views
9

나는 인터넷에서 매우 기본적인 웹 페이지를 발견했으며, 이제 더 좋은 페이지를 만들 수 있도록 명백한 일을하고 CSS를 추가하고 싶습니다.Compojure에서 CSS 시작하기?

  1. 다른 스타일 시트뿐만 아니라 jQuery도 어떻게 포함시킬 수 있습니까?
  2. 인라인 CSS를 포함하려면 어떻게해야합니까? 텍스트 정렬 : 가운데 예를 들어 빠른 변경을 시도해 볼 수 있습니까?

정기적으로 jQuery를 포함 :

이 에게
 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"/> 
 
이 형식없이

기본 안녕하세요 서버 : (다른 사람까지 빠르게 실행할 수 있도록 정적 라우팅 수정을 포함하도록 업데이트하는)

 

(ns hello-world 
    (:use compojure)) 

(defn index 
    [request] 
    (html 
    [:h1 "Hello World"] 
    [:p "This is ugly with CSS!"]) 
    ) 

(defn hello 
    [request] 
    (html "" 
    [:title "A very long title"] 
    [:div.comment 
    [:h1 "Hello's Page"] 
    [:p "This would look better with some CSS formatting!"]] 
)) 

(defroutes greeter 
    (GET "/" index) 
    (GET "/h" hello) 
    (GET "/*" 
     (or (serve-file "/opt/compojure/www/public" (params :*)) ;; This is needed to find CSS and js files 
     :next)) 
    (ANY "*" 
     (page-not-found) ;; 404.html is in /opt/compojure/www/public/404.html 
)) 


(run-server {:port 9090} 
    "/*" (servlet greeter)) 
 
+2

이것은 오래된 것입니다. – hawkeye

답변

12

당신은 포함 할 수 있습니다 스타일 속성은 다음과 같은 구문을 사용하여 '인라인 CSS 스타일'을 할당합니다.

[:h1 {:style "background-color: black"} "Hello's Page"] 

include-css 및 include-js 기능을 사용하여 스타일 시트 태그와 자바 스크립트를 포함 할 수도 있습니다.

(GET "/*" 
    (or (serve-file "PATH_TO_FILES" (params :*)) :next)) 

그렇지 않으면, 해당 지역의 CSS 파일이 제공되지 얻을 않습니다 : CSS와 당신이 뭔가를 약간 경로 문을 변경하고 추가해야합니다 JS 파일과 같은 정적 파일을 제공하기 위해

(defn hello 
    [request] 
    (html "" 
    [:html 
    [:head 
     [:title "A very long title"] 
     (include-css "my css file") 
     (include-js "http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js")] 
    [:body 
     [:div.comment 
      [:h1 "Hello's Page"] 
      [:p "This would look better with some CSS formatting!"]]]])) 

.

+0

나는 (include-css "style.css")와 (include-css "/style.css")를 모두 시도했지만 404를 얻는다. style.css는 hello.clj와 같은 디렉토리에있다. –

+0

예, 정적 파일을 GET "/ *"과 함께 처리해야했습니다 ... http://en.wikibooks.org/wiki/Compojure/Tutorials_and_Tips –

+2

이것은 오래되었습니다. 우리는 더 나은 것을 필요로합니다. – hawkeye