Справка по переходам CSS3 - PullRequest
       19

Справка по переходам CSS3

1 голос
/ 08 сентября 2011

Кажется, я не могу обдумать это, но я уверен, что это довольно просто ..

В основном у меня есть такой текст: DJDM, мои инициалы. Я пытаюсь сделать так, чтобы при наведении курсора на одну из букв рядом с ней появлялось полное имя с использованием переходов CSS3. Так что, если вы зависли над D, вы бы получили DanielJDM.

Я хочу, чтобы переход медленно перемещал остальные буквы, а остальная часть слова увеличивала непрозрачность до тех пор, пока она не станет полностью видимой.

Я уверен, что есть способ сделать это, я просто не могу понять это прямо сейчас ..

Буду признателен за помощь! Спасибо.

Ответы [ 2 ]

1 голос
/ 09 сентября 2011

Вот еще один пример.Я не использовал элементы span, поэтому там меньше html.Кроме того, нет стилей CSS, кроме необходимого минимума, чтобы получить требуемую функциональность.

http://jsfiddle.net/bGYkB/

html:

<div class="name-container">
    <p>Daniel</p>
    <p>Jiminy</p>
    <p>Daniel</p>
    <p>McLastname</p>
</div>

CSS

.name-container{
    display:block;
    float:left;
}

.name-container p{
    display:block;
    float:left;
    overflow:hidden;
    color:rgba(0,0,0,0);
    width:15px;
    -webkit-transition:all 1s ease;
    -moz-transition:all 1s ease;
}

.name-container p:first-letter{
    color:rgba(0,0,0,1);
}

.name-container p:hover{
    width:80px;
    color:rgba(0,0,0,1);
}
1 голос
/ 09 сентября 2011

Вот решение, которое далеко от идеального (у него много мерцаний), но должно помочь вам начать правильный путь:

HTML:

<span class="parent"><span class="initial">D</span><span class="full">aniel</span></span>
<span class="parent"><span class="initial">J</span><span class="full">ohn</span></span>
<span class="parent"><span class="initial">D</span><span class="full">avid</span></span>
<span class="parent"><span class="initial">M</span><span class="full">aniel</span></span>

CSS:

body {
    font-size: 30px;
}
span.parent {
    padding: 0 5px;
}
span.full {
    opacity: 0;
    width: 0;
    display: inline-block;
    transition: opacity 0.5s;
    transition: width 0.2s;
}
span:hover span.full {
    opacity: 1;
    width: 50px;
}

http://jsfiddle.net/HjCen/

...