Главное меню и кнопки

Главные вкладки

Аватар пользователя Шкипер Шкипер 25 марта 2007 в 12:57

Такая проблемка... Надо сделать так, чтобы в главном меню обычные, текстовые ссылки, заменить на кнопки. То бишь изображение, по нему тыкаешь - а там ссылка срабатывает.

И вообще - возможно ли такое?

Комментарии

Аватар пользователя Полюс Полюс 25 марта 2007 в 13:10

Я тут гемора нажил только лишь захотел стиль обычного меню поменять Smile
А ты вон чего захотел Smile
Надо искать на drupal.org кто-то пытался такое-же сделать. Мелькало где-то.
Правда не помню увенчалось успехом или нет. Друпал вешь в себе. Smile

Аватар пользователя steel.ne steel.ne 25 марта 2007 в 15:25

Подними глаза до кнопок "Новости", "Документация"... в заголовке этой страницы. Сделано до боли просто.

В HTML выводится просто тег a, а вот CSS для него весьма витиеватый:

#primary a {style.css (line 274)
background:#6DA6E2 url(images/tabs.gif) repeat-x scroll 0%;
border-color:#6191C5;
border-style:solid;
border-width:1px 1px 0px;
color:#FFFFFF;
display:block;
float:left;
font-weight:bold;
margin:0px 1px 0px 0px;
padding:5px 14px;
}

Что из этого непонятно?

Аватар пользователя Dan Dan 25 марта 2007 в 20:21

Прежде чем править темы надо изучить HTML, CSS, PHP (желательно именно в это порядке).
Для исправления внешнего вида страниц (цвета, рамочки, шрифт, фон и т.д.), достаточно знания первых двух технологий.

2Шкипер: Ты похоже относишь к разряду людей, любящих покритиковать и покричать по незначительному поводу? Не стоит. Особенно про вещи, знания о которых (пока) у тебя ограничены. Любая система - это компромисс между удобством и универсальностью. Drupal больше придерживается стороны универсальности. Отсюда высокий порог вхождения и высокая гибкость построения системе.

Аватар пользователя Шкипер Шкипер 26 марта 2007 в 18:54

эээ... А с чего такое мнение обо мне - что люблю покритиковать и покричать? Скорее уж наоборот. Я как раз не критикую, а хочу разобраться. ХТМЛ знаю неплохо, а вот CSS только начал изучать - а потому и спрашиваю.

Не думаю, что порог вхождения снизится от того, что мне не помогут Wink

Аватар пользователя steel.ne steel.ne 26 марта 2007 в 22:33

Неправильный вопрос на засыпку. Если тебе все понятно в приведенном куске, то такого вопроса возникнуть не должно. Если не понятно - задавай вопросы по порядку. Если не хочешь или все понято - тогда домашнее задание: объяснить следующие две строчки

display:block;
float:left;

Аватар пользователя Шкипер Шкипер 26 марта 2007 в 23:06

мне понятно что это должно быть вставлено в style.css, потому как именно он отвечает за стиль страницы. Но вот куда именно - не вкурил мальца.

Сорри за мой резкий тон - просто уже перестал замечать, натаскался за последнюю неделю Smile

Аватар пользователя Dan Dan 26 марта 2007 в 23:12

Добавление к домашнему заданию:
Чему будет равна ширина каждой стороны рамки и почему:
border-width:1px 1px 0px;

Аватар пользователя Natalie Natalie 26 марта 2007 в 23:14

Допиши где-нибудь в конце файла, чтобы видны были твои модификации (если используется готовая тема)- - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - -
Переводы некоторых модулей.
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.

Аватар пользователя steel.ne steel.ne 27 марта 2007 в 0:38

А самое интересное, посмотри на саму картинку images/tabs.gif и ответь на два вопроса:
1. Какова максимальная ширина кнопки (в пикселах) "шоп красиво было"
2. Зачем такая несуразная картинка может быть использована и где искать использование ее второй половинки?

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 27 марта 2007 в 13:51

Канешна, атстой! Непонятно даже, как хтмль работает. Может тут ваще люди на другом конце провода сидят и тексты с картинками показывают по запросу. Smile


Я ставлю строчку "php_value error_reporting 7" в файл .htaccess, а вы? Smile Полный русский перевод Drupal 5.x и еще некоторых модулей.

Аватар пользователя Шкипер Шкипер 28 марта 2007 в 0:05

Ок, всем спасибо за ответы.

Теперь еще один вопрос возник. Приведенный код используется для Primary links, как здесь. А вот как сдлеать то же самое для секондари? прописать в самом начале #secondary a {style.css (line 274), а не #primary a {style.css (line 274)?

И возможно ли сделать кнопки разными, а не одинаковыми?

Аватар пользователя steel.ne steel.ne 28 марта 2007 в 0:29

гы. style.css (line 274) - это я просто скопировал из файрбага. Типа чтобы было видно из какого файла и с какой строки бралось. Выкинь.

<div id="primary" class="clear-block">
<ul class="links-menu">
...
</ul>
</div>
<div id="secondary" class="clear-block">
<ul class="links-menu">
...
</ul>
</div>

Обрати внимание на свойства id тегов div и ответь на свой первый вопрос.

По поводу второго вопроса - малой кровью никак. Если уж совсем невтерпеж разные кнопочки - создай свой блок, вставь туда любой код. Только в этом случае меню не будет динамическим. Либо патчить тему, но тогда надо знать PHP

Аватар пользователя Шкипер Шкипер 28 марта 2007 в 15:57

Спасибо за ответ!
Нда, очень жаль что динамического меню так просто не сделаешь. Ну ладно, так тоже будет хорошо. Спасибо за помощь!
Про отдельный блок со своим кодом это я давно уже думал ))

Аватар пользователя Шкипер Шкипер 29 марта 2007 в 10:47

Хмм... теперь следующая проблема. Вставил код, все ок, но есть проблема... Залил картинку для кнопки, а она не отражается...
И еще. Когда картинки не было, было видно, что она должна быть - то есть была пустая рамочка, выделяющаяся на фоне всего остального. Но вот беда - на ИЕ все это хозяйство видно, а на фаирфоксе - нет. Это нормально? В смысле что когда залью картинку все появится, или я чего-то опять накосячил.

Аватар пользователя Шкипер Шкипер 29 марта 2007 в 17:23

так, с отображением кнопки разобрался более-менее.
Теперь осталась другая проблема. В IE все ок, а вот в фоксе все "поплыло"...
Чтобы это могло быть?
Посмотрите сами:
http://www.desarts.ru/

Аватар пользователя clubwave.ru clubwave.ru 29 марта 2007 в 20:59

ессно..

попробуй сперва для ul, который у тебя список ссылок строит, если не получится, после списка воткни какойнить div и пропиши ему

Аватар пользователя Шкипер Шкипер 1 апреля 2007 в 11:02

Кхм... я, конечно, дико извиняюсь, но перерыл весь style.css и не нашел там ul

Попробовал в конце фаила прописать такое вот:
}
div.menu
clear:both
{

В чем я опять накосячил? Ибо не помогло Smile Можете просто привести нужный код, который вставить? Я ж полный нуб в этом.

Аватар пользователя steel.ne steel.ne 2 апреля 2007 в 8:57

Аццкий отжыг.

Сравни и найди 10 различий:

#primary a {
color:#FFFFFF;
display:block;
float:left;
}

и

}
div.menu
clear:both
{

и вообще, если не знаешь как поступить - или читай доки или делай по образу и подобию.

Аватар пользователя Шкипер Шкипер 2 апреля 2007 в 23:49

Разобрался. Методом научного тыка, но разобрался ))
Дело оказалось не в style.css , а в base.css
в 85 строчке надо было убрать:
padding: 0px 4px;

Т.е было:
}
#top-nav ul li {
display: inline;
padding: 0px 4px;
}

а стало:
}
#top-nav ul li {
display: inline;
}