ForumD.ru - Дизайн, графика, скрипты, техническая поддержка для форумов и сайтов

Объявление

GEMcross

Кроссовер, ориентированный на активную игру и уютный флуд.
Собираем у себя драгоценных игроков уже почти три года.

Посетить

💰 Теперь у нас можно приобрести "Мгновенные уведомления от Алекса"

Скрипт оповещает пользователей о событиях на форуме в реальном времени, придавая динамики общению.
Автор: Alex_63 | Платформа: MyBB.ru.

У нас: структурированная документация, возможность платить иностранными картами, перевыпустить подписку или купить бессрочно.

Купить скрипт

🔥 Новинка в портфолио: ДИЗАЙН ФОРУМА В СТИЛЕ ФЭНТЭЗИ С ПРОЗРАЧНОСТЬЮ

Платформа: MyBB.ru (RusFF)
Стоимость: 8000 рублей;
Авторы: Moju & Gerda

Посмотреть

🌟 ОПЛАТА ЗАКАЗА НАГРАДНЫМИ БАЛЛАМИ И СКИДКИ

Заказы можно оплачивать наградными баллами (НБ). Полностью или частично.
Бартер за НБ осуществляется на условиях платного заказа, в качестве оплаты - НБ.
А если у вас есть любой платный заказ, вы можете обменять НБ на скидочные купоны.

узнать подробности

📣 Наш проект: Ролевой поисковик

Поиск роли на текстовых ролевых
Проект от специалистов FD

Спойлеры и обсуждение

❤️ Поддержать проект

Если у вас есть желание помочь нам сделать наш проект лучше:
Реклама на сайтеПредложения
Стать модераторомОтзывы

Подробнее

SPECIAL OFFER: We distribute designs for free

Finalizing the layout for your project;
Developing a style code;
Mobile version included if you wish.

Details

Support the project

If you want to help us:
Become a moderator
SuggestionsReviews

Details
❗ ❗ ❗ Technical work is underway. We'll fix it soon. :) If you're english-speaker and want to use our forum, switch to the russian language. This is temporary, until the works with multi-language option will be done. Sorry for the inconvenience.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Меню с эффектом "лава-лампа" Сердечки (CSS, HTML)

Сообщений 1 страница 3 из 3

1

ВСЕ скрипты и шаблоны для меню теперь здесь

перенесено

Меню с эффектом "лава-лампа" на CSS

Источник: ruseller.com
[html]
<link href="http://fonts.googleapis.com/css?family=Kelly+Slab&amp;subset=latin,cyrillic" rel="stylesheet" type="text/css">
   <div class="ph-heart-nav nav">
<a href="#">Главная</a>
<a href="#">О нас</a>
<a href="#">Галерея</a>
<a href="#">Контакт</a>
<a href="#">Карта</a>
<div class="effect"></div>
   </div>
<style>
.nav {
  overflow: hidden;
  position: relative;
  width: 900px;
  font-family: "Kelly Slab";
  font-size: 1.5em;
  text-shadow: 0 1px 0 white;
  text-align: center;}
.nav a {
    display: block;
    position: relative;
    float: left;
    padding: 1em 0 2em;
    width: 20%;
    text-decoration: none;
    color: #393939;
    transition: .7s; }
.nav a:hover {
      color: #c6342e; }
.effect {
  position: absolute;
  left: -10%;
  transition: 0.7s ease-in-out; }
.nav a:nth-child(1):hover ~ .effect {
  left: 10%; /* середина первого <a> */}
.nav a:nth-child(2):hover ~ .effect {
  left: 30%;  /* середина второго <a> */ }
.nav a:nth-child(3):hover ~ .effect {
  left: 50%; /* середина третьего <a> */}
.nav a:nth-child(4):hover ~ .effect {
  left: 70%; /* середина четвертого <a> */}
.nav a:nth-child(5):hover ~ .effect {
  left: 90%; /* середина пятого<a> */}
.ph-heart-nav .effect, .ph-heart-nav a:after, .ph-heart-nav a:before {
  background: url('https://forumstatic.ru/files/0012/6c/79/15795.png') no-repeat; }

.ph-heart-nav .effect {
  position: absolute;
  bottom: 26px;
  background-position: 0 0;
  height: 8px;
  width: 62px;
  margin-left:-32px; }

.ph-heart-nav a:before, .ph-heart-nav a:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: 20px;
  background-position: -62px 0;
  height: 20px;
  width: 26px;
  margin-left: -13px; }

.ph-heart-nav a:after {
  z-index: 1;
  background-position: -62px 0; }
</style>
[/html]

установка

1. HTML код, располагается в нужном вам месте.

ваши вебадреса- это то куда пункт менюшечки будет вести
названия пункта менюшечки

В первой строке кода, осуществляется подгрузка шрифта Kelly Slab, а затем - меню.
В примере меню из пяти позиций, если будете менять количество, придется в кодах всё математически перепросчитать.
Например, в исходной статье вариант меню с 4 позициями.

2. CSS код, располагается в окне стиля или вместе с html, но в этом случае, ниже расположенный код обертывается тегами <style></style>

скопировать код CSS

Если вы ничего не меняете, то краткий курс математики вам не нужен.
Математические расчеты:
размер блока меню 100%, а ширину вы задаете сами (в коде он стоит 900px). Поставили и забыли, далее мы работаем с процентами.
Теперь, если вы определились с количеством пунктов меню, то самое время (в примере у нас 5 штучек)
100% / 5 = 20%
В этом куске кода

.effect {
  position: absolute;
  left: -10%;
  transition: 0.7s ease-in-out; }

-10% получается от сдвига в левую сторону на половину определенного нами значения (т.е. 20/2=10)

.nav a:nth-child(1):hover ~ .effect {
  left: 10%; /* середина первого <a> */}

тут все просто, та же половинка, но с плюсом

.nav a:nth-child(2):hover ~ .effect {
  left: 30%;  /* середина второго <a> */ }

прошлое значение (10%) + 20% (те что мы получили при делении 100 на количество пунктов меню)
Далее код повторяется
a:nth-child - значение в скобках увеличиваем на 1-цу, а проценты на 20% (напоминаю это те,которые мы получили при делении 100 на количество пунктов меню)
Таким образом:
a:nth-child - значение в скобках окончится на цифре, равной количеству пунктов меню,
а значение left, для него будет ровняться 100% за минусом половины ширины пункта менюшки.
Запутались?
вот расчеты для меню из 8 пунктов
100/8=12,5%
12,5%/2=6,25%
и вот так будет выглядеть часть кода

.effect {
  position: absolute;
  left: -6,25%;
  transition: 0.7s ease-in-out; }
.nav a:nth-child(1):hover ~ .effect {
  left: 6,25%; }
.nav a:nth-child(2):hover ~ .effect {
  left: 18,75%;  /* 6,25%+12,5% */ }
.nav a:nth-child(3):hover ~ .effect {
  left: 31,25%; /* 18,75%+12,5% */}
.nav a:nth-child(4):hover ~ .effect {
  left: 43,75%; /* 31,25%+12,5% */}
.nav a:nth-child(5):hover ~ .effect {
  left: 56,25%; /* 43,75%+12,5%<a> */}
.nav a:nth-child(6):hover ~ .effect {
  left: 68,75%; /* 56,25%+12,5%<a> */}
.nav a:nth-child(7):hover ~ .effect {
  left: 81,25%; /* 68,75%+12,5%<a> */}
.nav a:nth-child(8):hover ~ .effect {
  left: 93,75%; /* 81,25%+12,5%<a> */}

Велика вероятность, что может поехать оформление, местоположение сердечек или стрелок, для этого нужно будет чуток поиграть с их положениями.
Если возникнут трудности обращайтесь.

в коде CSS используется эта картинка (цельная)
https://forumstatic.ru/files/0012/6c/79/15795.png


Возникшие у вас вопросы по установке этой менюшки или стилизации текста для нео, можно задать в этой теме.
Надеюсь меню вам понравилось.

Отредактировано nou (26.04.18 23:20)

+2

2

довльно красиво и необычно получилось, я только начинаю изучать цсс. спасибо

0

3

Прикольные ссылочки, надо будет налепить на дизайн ко дню Валентина.

0