<MyRusakov.ru />

Создание приложений для Android с нуля

Создание приложений для Android с нуля

Данный курс научит Вас создавать приложения любой сложности для Android. Курс состоит из 16-ти разделов, из которых Вы узнаете, как создавать свои собственные приложения для Android.

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

Просмотрев данный курс и выполнив упражнения из него, Вы сможете создавать приложения любой сложности для самой популярной мобильной ОС в мире - Android.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Hover эффект для кнопки + псевдокласс :nth-child

Hover эффект для кнопки + псевдокласс :nth-child

На этом уроке мы научимся делать простой hover эффект для кнопки с помощью псевдокласса :nth-child. На кнопке есть текст - button, при наведении курсора на кнопку, текст button двигается вправо, а на его место слева подтягивается его клон. Кнопочка получается живой с двигающимся внутри текстом.

Увидеть эффект в действии можно на

демо странице.

Код целиком:

JS Bin on jsbin.com

В чем тут фокус? Понятно, что этих надписей button должно быть две, абсолютно одинаковых. Создадим необходимую HTML структуру.

<body>
    <a href="#">
        <span>Button</span>
        <span>Button</span>
    </a>
</body>

Как видите кода очень мало, вся магия будет происходить в файле стилей. Одна ссылка и два span, решили обойтись даже без div-а. Сначала стилизуем гиперссылку, из которой и будет состоять наша кнопка.

a {
    position: absolute;
}

Свойство position: absolute в современных браузерах имеет двойное значение - задает позицию элемента относительно окна браузера и указывет на то, что строчный элемент гаперссылку надо отображать как блочный. Если его убрать из кода, то кнопка исчезнет, останется только текст.

Выравниваем кнопку посередине относительно окна браузера.

top: 50%;
left: 50%;
transform: translate(-50%,-50%)

Задаем ширину и высоту кнопки.

width: 250px;
height: 80px;

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

line-height: 80px;
Hover эффект для кнопки + псевдокласс :nth-child

Остальные, чисто оформительские свойства селектора "a" не требуют комментариев, они просты и понятны. На данном этапе наша кнопка с двумя статичными надписями - button. Дальше мы будем работать только с тегом span.

Hover эффект для кнопки + псевдокласс :nth-child

Код ниже соединяет обе надписи.

a span {
    position: absolute; /*нижний span поднялся вверх*/
    top: 0;
    left: 0;
    width: 100%; /*выравнивание относительно блока*/
    height: 100%;
    transition: .5s;
}

Hover эффект для кнопки + псевдокласс :nth-child

Псевдокласс :nth-child и никакого мошенничества

Первый span с псевдоклассом nth-child(1) сдвинет текст button на 100% по горизонтали влево.

a span:nth-child(1) {
    transform: translateX(-100%);
}

А второй span с псевдоклассом nth-child(2) оставит текст button на месте.

a span:nth-child(2) {
    transform: translateX(0);
}

Hover эффект для кнопки + псевдокласс :nth-child

Обе надписи стоят на одной линии и заняли свои исходные позиции для hover эффекта, который работает тоже на принципе сдвига на заданное число.

a:hover span:nth-child(1) {
    transform: translateX(0);
    transition: .5s;
}


a:hover span:nth-child(2) {
    transform: translateX(100%);
    transition: .5s;
}

И последняя строчка кода в селекторе "a", не даст обеим надписям button выйти за пределы самой кнопки. Все лишнее будет спрятано.

a {
    overflow: hidden;
}

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.