문제

보스는 마스터 페이지의 메뉴가 더 멋지게 보이기를 원합니다. 인터넷에서 사용할 수있는 도구 중 하나를 사용하여 그라디언트 파일을 생성했습니다.

각 메뉴 항목에 대한 CSS 클래스를 만들려고했지만 배경 이미지 지침과 스타일 빌더를 사용하면 다음과 같은 선을 얻습니다.

background-image: url('file:///C:/Documents and Settings/Username/My Documents/Visual Studio 2008/WebSites/ThisSite/Images/Gradient.png')

... 내가 무엇을 할 때 원하다 ~이다

background-image: url('~/Images/Gradient.png')

물론 첫 번째 URL은 로컬 컴퓨터에서 디버깅 할 때만 작동합니다. 다른 많은 asp.net 객체는 "~/"와 함께 웹 사이트의 최상위 디렉토리를 표시하지만 CSS 파일은 마음에 들지 않으며 메뉴 컨트롤 또는 메뉴 항목에 대한 배경 이미지를 설정할 수 없습니다. 다른 많은 컨트롤에 할 수있을 때 눈부신 누락처럼 보입니다.

내가 무엇을 놓치고 있습니까?

도움이 되었습니까?

해결책

당신은 거의 거기에 있습니다 ... 이것을 시도하십시오 :

.menuStyle
{
  background-image: url('/images/BG.gif'); /* Putting a slash in front means its relative to the root.  No slash would be relative to the current directory. */
  background-repeat: repeat-x; /* assuming you have a vertical gradient. */
}

도움이되기를 바랍니다.

다른 팁

CSS의 URL은 절대 (또는 상대적) URL이어야하며 서버 측 구성 요소가 아니기 때문에 Tilde 매핑을 사용하지 않아야합니다.

    background-image: url(  "/images/menu.jpg" );

눈부신 누락이 아닙니다. 전혀 누락이 아닙니다. Tilde는 ASP 구성입니다. CSS에는 아무런 의미가 없습니다.

하나의 "모든"작업을 교체하면 설정되어 있습니다.

바꾸다 파일 : /// C :/문서 및 설정/사용자 이름/My Documents/Visual Studio 2008/Websites/ThisSite 공백으로.

ASP.NET 응용 프로그램에서 CSS에서 배경 이미지 속성을 설정하려고 시도했습니다 (즉, 게시물에 설명 된 상대 경로를 제공). 그러나 그것은 나를 위해 효과가 없었습니다. 나중에 배경 이미지를 다음으로 설정합니다 background-image:url('http://localhost:1701/Images/BannerTileBackground.gif'); 작동했습니다 ..

올바른 접근 방식이 무엇이며 이전에 작동하지 않은 이유를 알려주십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top