2012-01-09 4 views
1

내가 읽은 것부터 CSS로 색상 상수를 만드는 것이 불가능합니다.ASP.NET MVC3 : CSS에서 색상 상수 만들기

분명히 상수를 사용하여 서버 측을 생성해야합니다.

브랜딩에 따라 두 가지 색상 세트를 사용하고 싶습니다. 그러나 나는 스타일 시트를 다르게하고 싶지 않다. 아무것도 바꾸지 말라.

기본적으로, mybe와 함께 색 상수를 정의 할 수있는 방법이 필요합니다. 그래서 예를 들면

:

if (Setting1) 
{ 
    color1 = #123534 
    color2 = #223534 
} 
else 
{ 
    color1 = #553231 
    color1 = #653231 
} 

그리고 스타일 시트

, 난 쉽게 호출 할 수 있습니다.

background-color = color1 

편집 :http://www.dotlesscss.org/

, 답변 중 하나를 다음과 사용하여 지금은 다음과 같이 스타일 시트가 연결되어 있습니다

<link type="text/css" href="@Url.Content("~/Content/Site.less")" rel="stylesheet" /> 

필자는 dotless.core 라이브러리를 가져옵니다. 모든 Webconfig 참조를 추가했습니다. .

http://www.dotlesscss.org/ : <dotless minifyCss="false" cache="true" />를 제외하고 (선택하고 어디로 가는지 확실) 내가 잘못했던 어떤

답변

4

나는이 위대한 작품을 쉽게 nuget 패키지로 설치

dot.less 같은 것을 사용하여 볼 것 단지 내가 할 것은 다음 정의 된 상수를 참조하는 주요 파일을 가져올 수있는 상수와 기본 파일을 만드는 것입니다

상수보다

은 또한 훨씬 더를 얻을. 그런 다음 MVC보기에서 설정에 따라 기본 파일을 선택하십시오.

@Color1: #fff; 
@Color2: #000; 

/* import main css */ 
@import "main.less"; 
+0

설치가 끝나면 메인 페이지에서 1,2,3,5 단계를 완료했습니다. 그들은 곧장 앞으로 ..하지만 4 단계, 나는 두 번째 부분'가 어디로 갔는지 알지 못한다. 그래도 선택 사항이라고 말하면서, 왜 내 스타일 시트가 작동하지 않는지 확신 할 수 없습니다. – Doomsknight

+1

은 선택 사항입니다. Nuget을 설치하지 않았습니까? 그것은 훨씬 더 쉽습니다. 스타일 시트 URL을 직접 열어 오류가 있는지 확인하는 것이 좋습니다. 가장 가능성있는 것은 당신이 무의미한 파일을 제공하지 않는다는 것입니다. mime 유형을 추가하십시오. http://bob.yexley.net/tag/less-css/ – Richard

+0

Will Nuget도 모든 설정 변경을 수행합니까? :) 어떻게 Nuget을 설치합니까? – Doomsknight

0

또한 말대꾸 언급 할 가치 - 루비가 필요하지 않은, 그래서 당신이 말대꾸와 로컬 CSS를 컴파일 할 수 있습니다 http://sass-lang.com/

참고.

1

MVC (및 면도기) 전통을 고수하고자한다면 here은 NuGet을 통해 사용할 수있는 흥미로운 프로젝트입니다.

+0

나는 컨셉을 좋아한다. 비록 그것이 캐시 될 것이고 대신에 각각의 호출마다 다시 생성된다는 것을 나는 알지 못한다. 그렇게 아주 효과적이지는 않을 것입니다. 그래도 고마워. 게다가 나는 면도기를 컨트롤러에서 인식 할 수 없다. Google은 ref를 사용해야하는 것이 무엇인지 말해주지 않을 것이다. – Doomsknight

+1

@Doomsknight 그래, 또 다른 옵션. 차이에 대해 정의 된 다른 CSS 클래스 스타일을 가지고 원하는대로 UI 요소에 할당하는 것이 훨씬 더 합리적입니다. CSS와 같은 용도였습니다. :) – rfmodulator