2013-10-09 4 views
2

Как я могу применить желтый градиент к белой стрелке?Добавить градиент в псевдоэлемент

здесь скрипка ссылка: http://jsfiddle.net/VNnKR/

$('.white').hover(function() { 
$(this).addClass('gradient'); 
}) 
+0

Вам нужен div внутри '# arrow4' или его можно удалить? – LinkinTED

+0

@LinkinTED Мне просто нужна стрелка градиента, она может быть удалена – alonblack

ответ

1

Я нашел решение, обратите внимание, что он работает только с твердым фоном.

HTML:

<div class="arrow"> 
    START HERE! 
</div> 

CSS:

body { 
    background: #6cc5c3; 
} 
.arrow { 
    margin-top: 150px; 
    position: relative; 
    font-weight: bold; 
    margin-bottom: 5px; 
    height: 20px; 
    padding: 10px 30px 10px 10px; 
    width: 140px; 
    color: #6cc5c3; 
    background: #fff; 
    text-align: center; 
} 
.arrow:after { 
    content:''; 
    height: 0; 
    width: 0; 
    display: block; 
    border-color: #6cc5c3 #6cc5c3 #6cc5c3 transparent; 
    border-width: 20px; 
    border-style: solid; 
    position: absolute; 
    top: 0; 
    right: -20px; 
} 

.gradient { 
    background: #ffe632; 
    background: -webkit-gradient(linear, left top, left bottom, from(#fffe8d), to(#f6d23e)); 
    background: -moz-linear-gradient(top, #fffe8d, #f6d23e); 
} 

DEMO

Стрелка прозрачен, а остальная часть "стрелки" такая же, как фоновый цвет кузова.

+0

на самом деле это отлично работает, и я вижу градиент, один вопрос, почему, когда мышь покидает кнопку, он стальной цветной? – alonblack

+1

Потому что вы создали его так ... :) С помощью функции addClass jQuery. Если вы не хотите, чтобы вы могли перейти только на CSS, измените '.gradient' на' .arrow: hover'. Проверьте http://jsfiddle.net/LinkinTED/VNnKR/10/ – LinkinTED

+0

cheers mate, очень полезно спасибо за ваше время! – alonblack

Смежные вопросы