2014-01-04 2 views
3

Wired's мобильного вид (установить агент пользователя для IOS Safari, чтобы увидеть его на рабочем столе) отличает элегантный поворот стандарта подчеркнута гиперссылка стиль:Чистой реализация CSS стиля гиперссылка Wired.com '

enter image description here

Я предположил, что это было достигнуто чисто CSS без внешних график, но нет:

background-image: url(http://cdn.mobify.com/sites/wired/production/i/link-bg.png); 
background-size: 5px 24px; 

Я хорошо знаю использование border свойства для создания пользовательского, взвешенное подчеркивания, но я не в состоянии создать линия подрезается как margin-bottom смещение сокращается при достижении базовой линии текста.

Можно ли достичь этого стиля, используя только CSS?

ответ

8

Вы можете применить insetbox-shadow свойство:

a { 
    text-decoration: none; 
    color: #000; 
    box-shadow: inset 0 -4px 0 #c0e6f7; 
} 

jsFiddle demo

Первое значение inset, что делает box-shadow идти внутрь, в отличие от наружу (из-за отсутствия лучшего способа поставить это), а второе значение 0 - это значение x (тень окна из стороны в сторону). Следующий -4px - это значение y (сверху вниз). Третий - 0, так что на тени нет эффекта «размытия» (таким образом, вы получаете сильный эффект границы), а затем следующее значение цвета. :)

+0

Я даже не думал о 'коробчатого shadow' стиль - большое мышление (так как все это стало настолько плоский!) :-) –

+0

@Brodie спасибо! Это на самом деле довольно опрятная/уникальная концепция. Определенно, если бы я подумал (сначала я попытался отрицательные значения дополнений, отрицательные свойства линии-высоты, которые явно не сработали). В любом случае, рад, что я мог бы помочь. :) –

1

Вы можете сделать это с линейным градиентом и размером фона.

Demo

a { 
    text-decoration: none; 
    color: inherit; 
    background: linear-gradient(to bottom, rgb(227,244,251), rgb(175,221,243)) bottom repeat-x; 
    background-size: 25%; 
} 
+0

Спасибо за ваш ввод Том, но я думаю, что ответ Джейса - самое чистое решение. –

1

Мне нравится @ ответ JaceCotton, но это не хватает некоторых мелких деталей, что проводное имеет в своей версии изображения. Детали, такие как слегка более темная синяя линия вдоль нижней части подчеркивания и мягкая верхняя часть подчеркивания.

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

Просто добавьте этот CSS к любому тегу, чтобы увидеть эффект (demo):

background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(198,232,248,0) 75%, rgba(192,230,247,1) 83%, rgba(192,230,247,1) 94%, rgba(184,226,245,1) 95%, rgba(184,226,245,1) 97%, rgba(184,226,245,0) 100%); /* FF3.6+ */ 
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(75%,rgba(198,232,248,0)), color-stop(83%,rgba(192,230,247,1)), color-stop(94%,rgba(192,230,247,1)), color-stop(95%,rgba(184,226,245,1)), color-stop(97%,rgba(184,226,245,1)), color-stop(100%,rgba(184,226,245,0))); /* Chrome,Safari4+ */ 
background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(198,232,248,0) 75%,rgba(192,230,247,1) 83%,rgba(192,230,247,1) 94%,rgba(184,226,245,1) 95%,rgba(184,226,245,1) 97%,rgba(184,226,245,0) 100%); /* Chrome10+,Safari5.1+ */ 
background: -o-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(198,232,248,0) 75%,rgba(192,230,247,1) 83%,rgba(192,230,247,1) 94%,rgba(184,226,245,1) 95%,rgba(184,226,245,1) 97%,rgba(184,226,245,0) 100%); /* Opera 11.10+ */ 
background: -ms-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(198,232,248,0) 75%,rgba(192,230,247,1) 83%,rgba(192,230,247,1) 94%,rgba(184,226,245,1) 95%,rgba(184,226,245,1) 97%,rgba(184,226,245,0) 100%); /* IE10+ */ 
background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(198,232,248,0) 75%,rgba(192,230,247,1) 83%,rgba(192,230,247,1) 94%,rgba(184,226,245,1) 95%,rgba(184,226,245,1) 97%,rgba(184,226,245,0) 100%); /* W3C */ 
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#00b8e2f5',GradientType=0); /* IE6-9 */ 
+0

Бит слишком темный в нижней части града, но гораздо ближе к оригиналу, хорошая работа :) –

+1

@Brodie Если вы или кто-либо еще захотите испортить цвета градиента, это инструмент, который я использовал для создания градиента css [http : //www.colorzilla.com/gradient-editor] (http://www.colorzilla.com/gradient-editor). Вы можете скопировать код css выше и импортировать его обратно в редактор, чтобы легко изменить градиент. –

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