2013-05-03 2 views
2

어디서나 볼 수 있다고 생각하지만 성공하지 못했습니다. 나는 Symfony2를 배우므로 뭔가를 간과 한 것이 가능합니다. 여기Symfony2 설정 CSS 미디어 유형 (모두, 인쇄, 화면, 핸드 헬드)

(이것은 잘 작동) 내 CSS를로드하는 방법입니다

{% stylesheets filter='cssrewrite' 
'@MyHomeBundle/Resources/public/css/*.css' 
'@MyAuthBundle/Resources/public/css/*.css' 
'@MyUserBundle/Resources/public/css/*.css' 
    <link rel="stylesheet" media="screen" type="text/css" href="{{ asset_url }}" /> 
{% endstylesheets %} 

질문입니다 내가 미디어를 구별 할 방법 : 핸드 헬드, 인쇄, 화면을?

이전 버전의 Symfony에서는 "mobile.css"가 소형 장치에만로드된다는 사실을 표시 할 수있는 view.yml 파일이 있다는 것을 알게되었습니다. 그때까지 내가 토론을 발견했습니다. http://www.mail-archive.com/[email protected]/msg07718.html Symfony2의 새로운 접근 방식 훨씬 더 크고이 view.yml을 제거하는 것은 좋은 단계였습니다. 그럼에도 불구하고 그것은 내 문제에 대한 해결책없이 나를 떠났다.

그래서 문제는 다음과 같습니다. mobile.css 또는 media = "print"(인쇄 가능한 버전)를 내 번들에서 가져올 수 있도록하기 위해 media = "handheld"를 어떻게 지정합니까?

나는 이것이 나뭇 가지의 이름을 테스트하고 이름에 따라 달라질 수 있습니다. 예를 들어 home_mobile.css 또는 home_print.css가 그에 따라 media = "handheld"또는 media = "print"를로드하고 기본 미디어 = "화면"-하지만 이것이 올바른 방향이고 어떻게 달성 할 수 있습니까?

도움 주셔서 감사합니다.

+0

아무도 없습니까? 아무도이 문제가 전에는 없었다는 것을 믿을 수 없습니다. – Pifon

답변

0

대답은 아니지만 다른 해결책입니다.

사이트의 규모에 따라 인쇄 및 장치에 대한 미디어 쿼리와 함께 페이지로드 시간을 단축하기 위해 사이트의 규모에 따라 단일 CSS 파일에 모든 내용을 보관할 수 있습니다. 위의 코드를 media = "all"로 변경할 수 있습니다.

링크 관련 - 나는 스타일 태그의 두 세트를 사용하여 공식적인 답변 중을 찾을 수 없었다 http://css-tricks.com/one-two-three/

+0

팁 주셔서 감사합니다. 문제는 내가 쓴대로 - 지금 Symfony를 배우고 있으므로 속임수를 피하고 그것을하는 올바른 방법을 정말로 이해할 것입니다. 또한, 당신이 볼 수 있듯이 - 나는 페이지의 특정 부분을 담당하는 여러 스타일 시트를로드하고있다. (Auth는 로그인 폼 만 포함하고, 홈은 홈페이지 스타일을 포함하고있다. 나는 메인 레이아웃 스타일을 생략했다.) 그럼에도 불구하고 다시 한 번 감사드립니다. 나는이 질문이 너무 오랫동안 여기에 매달리고 아무도 실제로 명확하고 직선적 인 해결책을 갖고 있지 않다는 것에 깊이 놀란다. 이상하게도 구현되지 않은 것일까 요? – Pifon

+0

문제가 없으므로 걸린 경우 문제가 될 수 있습니다. 불행히도 Symphony에 대한 경험이 없습니다. 가능한 대답은 여기 : http://trac.symfony-project.org/ticket/3237 [코드] 스타일 : - screen.css - print.css : {미디어 : 인쇄} - mobile.css : {media : 'handheld, screen'} - ie7.css : {조건 : IE 7} - ie6.css : {조건 : IE 6} – ConorLuddy

2

작동합니다.

{% stylesheets filter='less,cssembed,cssrewrite,?yui_css' output='css/screen.css' 
    'bundles/wolproject/css/main.less' 
%} 
<link href="{{ asset_url }}" type="text/css" rel="stylesheet" media="all" /> 
{% endstylesheets %} 

{% stylesheets filter='less,cssembed,cssrewrite,?yui_css' output='css/print.css' 
    'bundles/wolproject/css/print.less' 
%} 
<link href="{{ asset_url }}" type="text/css" rel="stylesheet" media="print" /> 
{% endstylesheets %} 
관련 문제