русский
Germany.ruForen → Архив Досок→ Webdesign und Hosting

Таблица > фрейм?

511  
Puschkina свой человек11.11.09 16:31
NEW 11.11.09 16:31 
Zuletzt geändert 11.11.09 16:33 (Puschkina)
Не ругайтесь сильно, я не профи абсолютно. Сделала по шаблону сайт (который в подписи). Шаблон был на основе таблицы, т.е. меню на каждой странице повторяется. Теперь до меня дошло, что если я в меню что-то хочу поменять, то мне это нужно будет менять на каждой странице, что очень муторно.
Существует какой-то способ, не переделывая сайт полностью, сделать так, чтобы меню было одно на всех?
http://www.hunde-aus-russland.de
#1 
voxel3d коренной житель11.11.09 16:54
voxel3d
NEW 11.11.09 16:54 
in Antwort Puschkina 11.11.09 16:31
1. Сделать меню на главной, загружать в виде фрейма остальные страницы.
2. Собирать страницы серверным скриптом, например, язык PHP очень простой, освоить пару команд совсем егко.
3. Собирать странивы используя SSI.
Dropbox - средство синхронизации и бэкапа файлов.
#2 
Puschkina свой человек11.11.09 18:32
NEW 11.11.09 18:32 
in Antwort voxel3d 11.11.09 16:54
Спасибо за ответ. Я пробовала уже iFrame встроить. Но что-то я туплю. Ведь страницы с текстом я тогда должна делать без меню. На главную страницу с меню встроить iFrame. Но тогда получается, что загрузив в этот фрейм текст, мне нужно будет эту страницу еще раз сохранить под новым именем. В противном случае, при нажимании кнопок меню будут открываться страницы с текстом, но без меню. Или я совсем запуталась?
#3 
Катала завсегдатай11.11.09 21:01
Катала
NEW 11.11.09 21:01 
in Antwort Puschkina 11.11.09 18:32

http://de.selfhtml.org/html/frames/definieren.htm
Скачай бесплатно, видео, музыку в mp3 с youtube и rutube себе на комп.http://www.videosave.org
#4 
Sergo2008 местный житель12.11.09 08:54
Sergo2008
NEW 12.11.09 08:54 
in Antwort Puschkina 11.11.09 18:32
Не советую заморачиваться с фреймами, это позовчерашний день. Советую для примера просто глянуть на код страницы такого сайта из любого браузера, что бы увидеть что видно для поисковиков, и встанет тогда понятно почему.
Как уже написал voxel3d, без первого пункта, это PHP и SSI. Единственное НО в этих случаях, хостер должен поддерживать эти технологии на данном хосте, что не везде есть.
#5 
Puschkina свой человек12.11.09 09:34
NEW 12.11.09 09:34 
in Antwort Sergo2008 12.11.09 08:54, Zuletzt geändert 12.11.09 09:35 (Puschkina)
Спасибо всем за ответы. Боюсь я, что с PHP и SSI не смогу сама быстро разобраться.
#6 
Puschkina свой человек12.11.09 15:59
NEW 12.11.09 15:59 
in Antwort Puschkina 12.11.09 09:34
Попыталась я PHP освоить, как здесь описано:
http://www.creative-edesign.com/php/frameset_durch_include_ersetzen.php
Вроде все просто, а ничего не получается, страница остается пустой. Файл для вкладывания находится в одной папке с индекс-файлом.
#7 
Vovan(ator) постоялец12.11.09 18:51
Vovan(ator)
NEW 12.11.09 18:51 
in Antwort Puschkina 12.11.09 15:59, Zuletzt geändert 12.11.09 18:53 (Vovan(ator))
Просто PHP не будет работать.
для его тестирования нужно на компе тест-сервер инсталлировать.
на мой взгляд самый удобный вариант это XAMPP
Скачать можно здесь --> http://www.apachefriends.org/de/xampp-windows.html#628
Или же тестировать на сервере в сети,
но тогда все будут иметь возможность посмотреть на "первые шаги"
#8 
Murr коренной житель12.11.09 19:17
Murr
NEW 12.11.09 19:17 
in Antwort Vovan(ator) 12.11.09 18:51
на мой взгляд самый удобный вариант это XAMPP
-----
Превосходно! Особенно, если помнить, что нигде не упоминалось,
под какой осью надо работать... Меня вот интересует версия для
MS DOS 3.20... на I8088... это тот, с внешней 8-ми разрядной шиной
и 16-ти битной архитектурой... (чтобы было понятно - там часть
драйверов чудненько глючила)
#9 
Puschkina свой человек17.11.09 10:16
NEW 17.11.09 10:16 
in Antwort Puschkina 11.11.09 16:31
Всем спасибо за подсказки, в том числе тем, кто предожил мне помощь в личке. Предложениями я не воспользовалась, так как, сами понимаете, проект благотворительный, а рассчитывать на бесплатную помощь я как-то не привыкла.
Повозившись пару дней я все-таки добилась результата. Меню и шапку вставила с помощью php include в таблицу. Можете посмотреть на результат.
Теперь у меня еще пара вопросов.
1) У меня в коде head повторяется аж 7 раз. Это очень плохо с точки зрения поисковиков, или можно так оставить?
2) Хочу выделить в меню пункт, чтобы было видно на какой странице человек находится в данный момент. Вот такая запись в CSS
#menu a:current { color: black; font-size: 10pt; font-family: verdana, sans-serif; background-color: #d7fcdb; text-decoration: none; width: auto; border-top: 2px solid #000000; border-bottom: 2px solid #000000; }
Но ничего не выделяется. Хотя пункт, на который показываешь мышкой, выделяется. У него такая запись
#menu a:hover {background-color:#e6e6e6; color: black; text-decoration:none ;font-family:verdana, sans-serif; font-size:10pt; width:auto; border-bottom:1px solid #000000; border-top:1px solid #000000; }
Почему и как это исправить? Спасибо заранее.
#10 
Puschkina свой человек17.11.09 12:32
NEW 17.11.09 12:32 
in Antwort Puschkina 17.11.09 10:16, Zuletzt geändert 17.11.09 14:46 (Puschkina)

#11 
Sergo2008 местный житель17.11.09 12:40
Sergo2008
NEW 17.11.09 12:40 
in Antwort Puschkina 17.11.09 10:16, Zuletzt geändert 17.11.09 12:42 (Sergo2008)
1. Это плохо по всем пунктам, так как неправильно. Структура страницы должна быть примерно такой:
В ответ на:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=Windows-1251" http-equiv="content-type">
// остальные мета теги
<title>Название сайта</title>
// подключаемые линки, типа ксс файлов и ява скриптов.
</head>
<body>
// сам сайт
</body>
</html>

То есть не каких там кучу раз повторений, а один раз.
2. Это делается примерно так, с помощью пхп проверяется какая страница в данный момент загружена, и к пункту меню добавляется индекс. Как проверить какая страница в данный момент загружена, всё зависит от метода создания сайта. Это может быть непосредственно название страницы типа "about.php" через , или типа ".index.php?page=about".
В ответ на:

<?php $aktiv=$_server('REQUEST_URI'); ?>
<a href="index.php" class="menu" <?php echo ($aktiv=='/index.php) ? 'id="aktiv"' : '';>>Home</a>
<a href="about.php" class="menu" <?php echo ($aktiv=='/about.php) ? 'id="aktiv"' : '';> >About</a>
.....
<a href="menun.php" class="menu" <?php echo ($aktiv=='/menun.php) ? 'id="aktiv"' : '';>>MenuN</a>

В данном примере мы получаем всё что после домена, вместе со слэшем, тоесть "/about.php", после чего в тегах меню, в примере для тега А, делаем проверку на соответствие, и либо вставляем дополнительный параметр id="aktiv", либо нечего не вставляем. А уже в ксс прописываем что должно изменится, цвет, размер или ещё что. Класс в ксс определяет общие параметры, ид дополнительный параметр.
В ответ на:

.menu { // all menu params }
.menu #aktiv { // aktiv menu params }

#12 
kolja-nikolai знакомое лицо18.11.09 09:50
kolja-nikolai
NEW 18.11.09 09:50 
in Antwort Puschkina 11.11.09 16:31
попробуйте установить cms, например http://www.cmamadesimple.org, в настройке могу безвозмездно помочь....
http://witze.ucoz.ru/ - Весёлый сайт - для весёлых людейhttp://harz.ucoz.ru/ - [Гарц] - русскоязычный портал региона
#13 
Puschkina свой человек19.11.09 09:43
NEW 19.11.09 09:43 
in Antwort Sergo2008 17.11.09 12:40
Спасибо. Пункт 1 исправила. А по пункту 2, скажу честно, ничего не поняла
#14 
Puschkina свой человек19.11.09 09:45
NEW 19.11.09 09:45 
in Antwort kolja-nikolai 18.11.09 09:50
Спасибо. Я пока решила оставить так, как есть, а то временные затраты уж очень большие. Но в будущем, возможно, займусь.
#15 
kolja-nikolai знакомое лицо19.11.09 09:54
kolja-nikolai
19.11.09 09:54 
in Antwort Puschkina 19.11.09 09:45
я с вас денег не просил..........
http://witze.ucoz.ru/ - Весёлый сайт - для весёлых людейhttp://harz.ucoz.ru/ - [Гарц] - русскоязычный портал региона
#16 
Puschkina свой человек19.11.09 10:10
NEW 19.11.09 10:10 
in Antwort kolja-nikolai 19.11.09 09:54
Я это поняла, спасибо. Но дело не в этом, ведь от меня тоже потребуются затраты времени. Или Вы можете основную работу взять на себя? Тогда скажите, что я конкретно должна сделать (для начала установить эту программу, а дальше?). Сайт вроде работает, хотя он конечно далеко не идеален с технической точки зрения. Я это прекрасно понимаю.
#17 
Sergo2008 местный житель19.11.09 11:52
Sergo2008
NEW 19.11.09 11:52 
in Antwort Puschkina 19.11.09 10:10, Zuletzt geändert 19.11.09 11:53 (Sergo2008)
В ответ на:
А по пункту 2, скажу честно, ничего не поняла

Там не чего сложного нет, объясняю подробней, с учётом того что на сайте.
1. Самой первой строчкой в файле меню вставить такой код <?php $aktiv=$_server('REQUEST_URI'); ?>, это передаст в переменную $aktiv название файла загруженной страницы. Либо на каждой странице вставить такой код <?php $aktiv="название файла"; ?>, но данный вариант не удобен, так как файлы могут добавляться, и везде придётся прописывать это.
2. В файле меню, для каждого пункта меню, в данном случае ссылок в таблице, нужно поменять это - <td align="left" ><a href="index.php" > Aktuell </a></td>, на следующее - <td align="left" ><a href="index.php" class="menu" <?php echo ($aktiv=='/index.php') ? 'id="aktiv"' : '';> > Aktuell </a></td>. Где красным, это то что нужно добавить, что и будет отвечать за подсветку. Это вариант для первого варианта получения имени файла, если же имя страницы будет на каждой странице указываться, то на месте /index.php, будет то что укажется в $aktiv="название файла".
3. Указанный в пункатх меню class="menu", отвечает за стиль всех пунктов меню, к примеру размер шрифта, цвет и прочее, чтобы отвязать его от общего стиля. А тот самый id="aktiv", который будет добавлен в активный пункт меню, поменяет к примеру стандартный цвет меню, на другой. Всё что надо сделать, это просто в format.css прописать примерно следующее.
В ответ на:

.menu a { color: #333; font-size: 12px; } // задаст общие параметры пунктов меню
.menu a#aktiv { color: #ff0000; } // поменяет цвет на красный для активного меню

Для чего нужен класс в меню. Класс отделит стиль ссылок меню от остальных ссылок, к примеру ссылок в тексте, что иногда важно. Если все ссылки и меню должны быть одинаковыми, то можно класс не указывать.
#18 
Puschkina свой человек19.11.09 13:06
NEW 19.11.09 13:06 
in Antwort Sergo2008 19.11.09 11:52
Спасибо, но вот здесь видимо какая-то ошибка?
<td align="left" ><a href="index.php" class="menu" <?php echo ($aktiv=='/index.php') ? 'id="aktiv"' : '';> > Aktuell </a></td>
Потому что, когда тестирую в браузере, он мне вообще меню не показывает, а пишет
Parse error: syntax error, unexpected '>' ... on line 9
А line 9 - это как раз первая строчка с меню. А когда смотрю Vorschau в программе, то перед Aktuell стоит лишняя > , но даже если ее убрать, то Parse error остается.
#19 
Sergo2008 местный житель19.11.09 13:31
Sergo2008
NEW 19.11.09 13:31 
in Antwort Puschkina 19.11.09 13:06, Zuletzt geändert 19.11.09 13:32 (Sergo2008)
Звиняюсь , моя ошибка, должно быть так <td align="left" ><a href="index.php" class="menu" <?php echo ($aktiv=='/index.php') ? 'id="aktiv"' : ''; ?> > Aktuell </a></td>
При наборе строки не дожал на вопросительный знак, клава 8 лет отроду, уже барахлит.
#20