CSS и HTML - Могут ли файлы CSS генерировать HTML? - PullRequest
3 голосов
/ 03 мая 2011

Я делаю сайт, стилизованный под CSS, в двух DIV.Один DIV 'Header', который всегда один и тот же, и DIV 'Content', который изменяется.

В моем файле CSS можно написать HTML со всеми ссылками, которые остаются в заголовке, поэтому япросто нужно звонить (или подобное) на каждой странице, вместо того, чтобы каждый раз записывать содержимое моего заголовка?Также помог бы в редактировании только одного источника, так как я часто пропускаю страницы по ошибке.

Я не хочу использовать фреймы, поэтому ищу альтернативу.

Спасибо, Бретт

Ответы [ 5 ]

1 голос
/ 03 мая 2011

В зависимости от поддерживаемых языков сервера и сервера, это можно сделать.

Некоторые серверы позволяют вам использовать, например, Включения на стороне сервера . С другими вы можете указать «блок» HTML для заголовка (например), который будет частью шаблона всего сайта.

Что такое , а не , можно достичь этого только с помощью CSS и HTML.

0 голосов
/ 03 мая 2011

Невозможно добиться этого с помощью CSS, потому что CSS не может обрабатывать какие-либо события, это просто «ссылка» для браузера, чтобы знать, как стилизовать вашу веб-страницу, однако это делается с использованием AJAX. Я предлагаю вам взглянуть на jQuery lib, однако он значительно ускорит процесс - основной недостаток заключается в том, что поисковые роботы не смогут правильно проиндексировать вашу страницу, так что это будет плохо для SEO перспектива.

Возможно, если у вас есть время, сделать версию с индексированием и версию AJAX, это то, что мы сделали для мобильного проекта.

JQuery AJAX API

0 голосов
/ 03 мая 2011

CSS не может помочь вам сделать это.

Вы можете сделать ajax загрузку контента. Вы можете создать один index.html и несколько файлов 'content' (about.html, contacts.html и т. Д.). А в index.html вы можете загрузить другой .html в content-div (например, с помощью метода jQuery .load ())

Другой способ - вы можете сделать небольшой движок шаблонов на php (или другом серверном языке)

0 голосов
/ 03 мая 2011

Обычными вариантами выполнения этой клиентской стороны являются iframe или некоторый javascript, который делает DOM для добавления контента (возможно, загруженного из внешнего файла).Или какой-нибудь javascript, который создает iframe.Или iframe, который создает некоторый JavaScript.Некоторая перестановка этих одиозных техник.

CSS имеет свойство content , но я думаю, что оно ограничено простым текстом.Я не знаю, можете ли вы использовать его для извлечения HTML-кода, используя либо строку, либо URI.

Как уже упоминали другие, наиболее распространенный подход - сделать это на стороне сервера.Вы можете сделать это снизу вверх с помощью включений или сверху вниз с такими вещами, как Tiles и SiteMesh.

0 голосов
/ 03 мая 2011

Вот почему у вас обычно работает какой-то серверный код, который вставляет общий заголовок, например php include, SSI или другой шаблонный фреймворк. Если это не вариант, вы можете написать JavaScript, который каждый раз записывает ваш заголовок в определенный DIV. Хотя я не думаю, что это здорово с точки зрения SEO.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...