|
12 Кб |
|
| В аттаче рисунок меню. Там показано, что должно происходить при наведении.
Набрано меню шрифтом Tahoma.
Вопрос собственно в чем - как средствами CSS такое реализовать.
Квадратные блоки я знаю как сделать чтобы так выделялись при наведении, но, как быть с верхними и нижними пунктами, как-то можно придумать универсальный вариант, несмотря на закругления ?
Окаймляющую рамку с закруглениями быть может можно как-то поверх всего этого наложить ? | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 12:51)
| | каждая строка меню - это ячейка таблицы. Для средних ячеек - один фон. Для верхней и нижней - отдельно две фоновые картинки. | |
|
|
|
|
|
|
|
для: DDK
(14.08.2008 в 13:05)
| | Т.е. сделать все таки так, в итоге 6ть рисунков получится нужно сделать ? - три вида неактивных и три вида активных. А иной способ есть ? | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 13:15)
| | А зачем так много, хватит на каждый пункт меню и по одной картинке, если у верхнего элемента свой класс стиля, у нижнего свой, и у средних свой, один на всех. | |
|
|
|
|
|
|
|
для: sim5
(14.08.2008 в 13:32)
| | А как закругления в стилях обработать ? Там ведь чуть иначе выглядит. | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 13:15)
| | всего 3 рисунка. С учётом того, что они должны будут менять при наведении - получится 6. Графика там простая, поэтому весить они будут по пол килобайта каждый, что несущественно. А если еще воспользоваться скриптом предзагрузки картинок (preload), то должно получиться без лагов вообще. | |
|
|
|
|
|
|
|
для: DDK
(14.08.2008 в 13:39)
| | Вот тоже об этом варианте думаю, но вдруг подскажут иной. Этот мне не очень нравится. | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 13:46)
| | Лучший вариант - на флеше c XML управлением контентом :-D | |
|
|
|
|
|
|
|
для: DDK
(14.08.2008 в 13:52)
| | Не соглашусь. Поисковики у нас до сих пор по флэш ссылкам не ходят вроде, да и пользователям лишний траффик гнать.
Так что вариант скорее не лучше, а красивее :) | |
|
|
|
|
|
|
|
для: DDK
(14.08.2008 в 13:52)
| | Это вообще бред-какой флеш, когда тут html+css | |
|
|
|
|
|
|
|
для: DDK
(14.08.2008 в 13:39)
| | Даже с учетом наведения, всего три рисунка. | |
|
|
|
|
|
|
|
для: sim5
(14.08.2008 в 14:09)
| | Не могли бы хотя бы на словах пояснить тогда как ?
Я минимум 4ре придумал. три на наведение и один - общий фон меню =) | |
|
|
|
|
|
|
|
для: Richard Ferlow
(15.08.2008 в 09:29)
| | Ну я и говорил именно о самих кнопках. Если можно вырезать изображения кнопок так, что их изображения будут определять всю картинку, то фон это просто локальный цвет, например, светлоголубой просвет между кнопками. Сами кнопки должны иметь на картинке только справа и слева такую линию, а верхняя еще и сверху (у нее закругление), то же самое и для нижней кнопки. Если еще какая либо фича есть (на картинке похоже что-то на тень вокруг меню), тогда еще нужно пассивное изображение между кнопками, высотой в один пиксель, ну и по ширине этой картинки. Само изображение кнопки, это ее пассивное и активное состояния, который склеены вместе, например, одно над другим. Тогда при наведении на кнопку, меняем ее класс стиля по умолчанию, на класс который изменит положение изображения фона этой ячейки (картинки кнопки) по высоте. Уходим с кнопки, возвращаем ей класс стиля по умолчанию.
Если же у вас там что-то наворочено, что никак не обойтись без изображения фона под кнопками, тогда делайте фон, но лучше оптимизировать рисунок без наворотов лишних, ведь меню может меняться, а значит еще и это придется учитывать... | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 12:51)
| | Увидел в примере только одну картинку(стрелку), остальное css
Предлагаю верстать валидно и семантично, не используя таблиц, там где не нужно
Меню-список ссылок поэтому верстайте при помощи списков
<ul>
<li><a href="#">Один</a></li>
</ul>
|
| |
|
|
|
|
|
|
|
для: mihdan
(15.08.2008 в 17:03)
| | CSS уже картинки рисует? | |
|
|
|
|
|
|
|
для: sim5
(15.08.2008 в 17:13)
| | И где вы увидели столько картинок-я вижу одну-стрелку
Остальное можно сделать при помощи css
сходите http://www.alistapart.com/, http://www.cssplay.co.uk/ и станет ясно | |
|
|
|
|
|
|
|
для: mihdan
(15.08.2008 в 17:34)
| | И что там смотреть, горизонтальное меню на этой странице? | |
|
|
|
|
|
|
|
для: sim5
(15.08.2008 в 17:55)
| | Да вы сайт то почитайте | |
|
|
|
|
|
|
|
для: mihdan
(15.08.2008 в 18:08)
| | mihdan, можно поместить кучу слоев, даже закруглить углы, можно еще наворотить, чтобы имитировать картинки меню. Но вы картинку автора внимательно рассмотрели? | |
|
|
|
|
|
|
|
для: sim5
(15.08.2008 в 18:16)
| | Рассмотрел отлично, но все равно не могу понять в чем проблема.
Скруглить угол
Добавить фон для блока со сглаженными углами
Что там еще? | |
|
|
|
|
|
|
|
для: Richard Ferlow
(14.08.2008 в 12:51)
| | Загрузите пожалуйста картинку в более четком виде, а то уж больно размазано все(чтоб спорных моментов было меньше) | |
|
|
|
|
|
|
|
для: mihdan
(15.08.2008 в 19:02)
| | Да, боюсь, все равно спорить найдется о чем :)
Я почитал, что вы написали, и, раскинув мозгами пришел к выводу что и действительно, все это можно на css сделать, вместе с закруглениями.
Осталось только придумать, как тень там же сделать
(т.е. в идеале если бы это получился независимый блок меню, который свободно бы перемещался по сайту, сохраняя прозрачность тени)
Я решил как - прозрачность тени можно только за счет png такую получить, т.е сделать что-то вроде самого верхнего слоя в меню - рамка тени с закругляними с заданной прозрачностью, чуть ниже, под рамкой слой меню, где наведения-активации происходят, ну и самый первый слой(нижний) сам сайт. Но, такую сложную штуку мне выдумывать в коде не хочется(и до конца не понимается как), поэтому, наверное, придется по пути какому иному идти, и причем весьма далекому от семантики. | |
|
|
|