2012-06-29 5 views
0

head 태그 안에 CSS 스타일 시트를 추가하고 싶지만 body 태그에 추가됩니다. 는 여기에 내가했던 일이야 : 내가 행동 '인덱스'내 볼 수있는 컨트롤러 '국가'가 index.phtml젠드 프레임 워크의 스타일 시트보기 도우미

index.phtml이 포함됩니다 :

<?php 
$this->headLink()->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojo/resources/dojo.css') 
      ->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojox/grid/resources/claroGrid.css'); 
echo $this->headLink(); 

이 스타일 시트 내부에 추가되도록 body 태그. 이 작업에만이 스타일 시트를 추가하고 싶습니다. 내 layout.phtml 안에이 스타일 시트를 포함하고 싶지 않다. 어떻게 할 수 있습니까?

답변

3

는 정확하지만 당신은 잘못된 장소에있는 링크를 출력 무엇 인 스타일 시트를 추가 한 후보기에서 headLink()를 반향하고 있습니다. 당신은 귀하의 코드를 변경합니다 index.phtml에서

:

$this->headLink()->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojo/resources/dojo.css') 
     ->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojox/grid/resources/claroGrid.css'); 

을 그리고 layout.phtml에서 (당신은 스타일 시트 링크를 표시 할 <head> 섹션) :

echo $this->headLink(); 
2

잘못된 장소에 추가하고 있습니다.
.phtml 내부에서 이런 방식으로 스타일 시트를 추가하면 문서 본문에 있습니다.

public function someAction() { 
    $this->view->headLink()->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojo/resources/dojo.css'); 
} 

를 당신이 사용할 수있는 컨트롤러의 모든 작업에 스타일 시트를 추가 할 번갈아 경우 :
은 컨트롤러 내부에 액션 코드에서 스타일 시트를 추가 한 페이지의 머리에 스타일 시트를 추가하려면 컨트롤러의 초기화() 메소드에서 동일한 코드 : 현재 스타일 시트를 대체해야하는 경우

public function init() { 
    $this->view->headLink()->appendStylesheet($this->baseUrl().'/js/dojo-1.7/dojo/resources/dojo.css');  
} 

당신은 setStylesheet()를 사용하거나 prependStylesheet() 또는 appendStylesheet()를 사용할 수 있습니다. 당신이 무슨 짓을했는지

행운을 빌어 요 ...

+1

배치 전에 표현되기 때문에보기에서 자리 표시 자 컨텐츠를 추가 할 수 있습니다. –

+0

미안 그는 이미 레이아웃에 자리 표시자가 있다고 가정했습니다. 또한 나는 이런 종류의 코드를보기에 고려하지 않기 때문에 코드가보기에서 작동한다는 것을 인식하지 못했습니다. 그러나 나는 고쳐 줘서 고마워. – RockyFord

관련 문제