2011-01-14 3 views
0

У меня очень странная проблема. Я не могу, чтобы жизнь меня поняла.Silly CSS ref problem

Путь к моей таблицы стилей (на данный момент), это:

<link rel="stylesheet" href="assets/css/default.css" /> 

Но, почему это не загружать таблицы стилей?

Когда я перемещаю таблицу стилей в то же место, что и страница index.html, а затем меняю ссылки на нее, чтобы указать на корневой каталог, он снова работает?

Он никогда не хочет работать, если таблица стилей имеет длину не более 1 директории.

Это нормально? Или он должен работать?

ответ

1

Может попробовать:

<link rel="stylesheet" href="/assets/css/default.css" /> 
1

Его, потому что ваш путь является относительным, попробуйте:

<link rel="stylesheet" href="/assets/css/default.css" /> 

, например, если путь является относительным (как у вас):

для url http://example.org/foo/bar.html

Он попытается загрузить filte http://example.org/foo/assets/css/default.css

2

Ссылка на таблицу, как она есть, указана в веб-браузере «посмотрите на эти папки, начиная с вашего местоположения CURRENT».

Итак, если вы находитесь в /pages/home.aspx, а папка с вашими ресурсами находится в корне, она не найдет ее, потому что она будет смотреть на нее так, как если бы она находилась в/pages/assets/css /.

  • Если нет косой черты, оно начинается с текущего каталога страницы. (Активы/CSS/default.css).
  • Если есть одна косая черта, она начинается с корня. (/assets/css/default.css).
  • Если у него две точки и косая черта, она начинается с родительского каталога в текущем каталоге (../assets/css/default.css).
0

Я понял, что случилось.

Я не знаю, почему, но я просто обновил каталог на моем FTP-клиент, а в папке активов не была загружена (но это говорит передача успешна.)

Я снова загрузил папку активов , и теперь он работает как ожидалось.

P.S. Спасибо всем за исправление моей ошибки относительным путем. :)

+0

«Он никогда не хочет работать, если таблица стилей больше, чем 1 каталог глубоко.» угадывая, что ваша проблема была относительной штукой :) Ну, в любом случае, примите ответ, чтобы мы все могли вернуться домой: D – Hannes

+0

Я не могу; Он хочет, чтобы я подождал еще три минуты. –

0

./sample.html и sample.html являются имеет то же смысл, его текущего каталог
../ ищет родительские каталог, в другом описании один верхний каталога.

есть прекрасный пример в this site об этом

+1

Уже есть (почти 3-летний) ответ, который указывает, что '../' возвращает родительский каталог к ​​текущему, а не к корневому каталогу. –

+0

@DennisMeng Я столкнулся с этой проблемой несколько минут назад и исправлен, пытаясь один за другим. И './' направляет вас в текущий каталог. просто минута [this] (http://stackoverflow.com/questions/7591240/what-does-dot-slash-refer-to-in-terms-of-an-html-file-path-location) SO обсуждение и стыдно за себя –

+0

Да, я только что прочитал дискуссию, которую вы связали; он повторяет, что '..' идет вверх по каталогу, что означает, что он переходит в родительский каталог, а не в корневой каталог. –