CSS background-image не будет отображаться с коротким URL - PullRequest
2 голосов
/ 24 апреля 2011

Я выполнил поиск, и темы не помогли.

Я пытаюсь, чтобы фоновое изображение моего заголовка повторялось по оси X заголовка div.

Когда я создаю CSS с длинным URL, таким как

background-image:url('http://site.com/images/logo.png');, все работает отлично

Когда я пытаюсь сократить CSS до чего-то, например ~ / images / или даже имеяCSS и файл сайта уже в корневой папке и с помощью / images / ничего не получается

background-image:url('~/images/logo.png')

background-image:url('/images/logo.png')

Ответы [ 2 ]

4 голосов
/ 24 апреля 2011

Возможно, это связано с тем, что вы не сокращаете свои URL-адреса соответствующим образом.

Предполагается, что абсолютный путь составляет:

url('www.example.com/images/imageName.png');

URL-адрес, относящийся к корню, будет:

url('/images/imageName.png');

И относительный путь (при условии, что ваш CSS-файл находится в www.example.com/css/cssStylesheet.css) будет:

url('../images/imageName.png'); /* parent directory, then the images directory */

Префиксный формат URL ~ мне неизвестен, хотя я подозреваю, что это ASP,или .NET, форма?Хотя я не могу дать совет по этому вопросу.

Вопросы, которые могут быть вам полезны:

0 голосов
/ 24 апреля 2011

URL-адрес, содержащий «~», является специфическим для ASP.NET, он обрабатывается на стороне сервера и преобразуется в «правильный» URL-адрес, такой как http://mysite/my_virtual_directory/images/logo.png.Веб-браузеры не имеют никакого способа сделать это, так как они не знают, что означает «~».

Вы должны убедиться, что URL-адреса, используемые в вашем CSS-файле, «понятны» браузеру.поэтому имейте их "полностью квалифицированными" (http://mysite/my_virtual_directory/images/logo.png) или начинайте с "начала" (/my_virtual_directory/images/logo.png).

...