Открыть меню    

Четыре отличных CSS техники для ссылок

Изначально, чтобы описать различные техники для ссылок, задумывалось несколько статей. Но в результате я пришел к выводу, что они (техники) довольно простые (но эффективные) и следует суммировать все техники в одной статье.

Ссылки (тег a) одна из важнейших частей вашего документа. Навигация была бы невозможна, не будь ссылок. Псевдокласс :hover является тем основным моментом, при помощи которого возможно осуществлять нижеописанные техники. Каждая из этих техник основана на чистом CSS, без уродливых хаков, и JavaScript.

1. Простая CSS подсказка

css подсказка

Чтобы это работало, вам потребуется следующий код:

HTML

  <a href="#">Title <span>Tooltip</span></a> 

Ссылку следует расположить относительно (position:relative), тег span – абсолютно и написать для него отдельный стиль. Мы изначально спрятали тег span и он проявляется только когда на ссылку наведена мышка (используя a:hover span).

CSS

 a{
	z-index:10;
	}
a:hover{
	position:relative;
	z-index:100;
	}	
a span{
	display:none;
	}
a:hover span{
	display:block;
	position:absolute;
	float:left;
	white-space:nowrap;
	top:-2.2em;
	left:.5em;
	background:#fffcd1;
	border:1px solid #444;
	color:#444;
	padding:1px 5px;
	z-index:10;	
	}

2. CSS галерея

css галерея

Когда на миниатюру наведен курсор мышки, большое изображение проявляется в определенной области. Мы воспользуемся неупорядоченным списком. В каждом элементе списка мы расположим якорь с двумя изображениями, одно из них миниатюра, другое в натуральную величину. Полноразмерное изображение размещено внутри тега span и изначально спрятано. Когда на миниатюры наведен курсор мышки, мы присваиваем тегу span display:block, тем самым открывая большое изображение.

HTML

   <li> 
   	<a href="#"> 	
    	<img src="images/02_1s.jpg" alt="gallery thumbnail" /> 
        <span><img src="images/02_1.jpg" alt="gallery image" /></span> 	
    </a>
   </li>

CSS

ul#gallery, ul#gallery li{
	margin:0;
	padding:0;
	list-style:none;
	}
ul#gallery{
	width:400px;
	height:375px;
	position:relative;
	background:#e1e1e1 url(images/bg_preview.gif) no-repeat 50% 40%;
	}	
ul#gallery li{
	float:left;
	display:inline;
	margin-top:300px;
	}
ul#gallery a span{
	display:none;
	}
ul#gallery a:hover{
	background:none;
	z-index:100;
	}	
ul#gallery a:hover span{
	position:absolute;
	width:400px;
	height:300px;
	float:left;
	top:0;
	left:0;
	display:block;
	}

3. Меняем размеры изображения CSS

css масштабируем изображение

Данная техника меняет размеры изображения 'на лету' (полноразмерное изображение проявляется в том случае, когда на миниатюру наведена мышка). Настройки будут похожи на настройки из предыдущего примера: мы расположим два изображения в одном якорном теге. Полноразмерное изображение изначально спрятано и проявляется при наведении курсора мышки на ссылку. Так как изображения лежат на одном уровне, кажется, будто изображение масштабируется.

HTML

<li>
 <a href="#">
    <em><img src="images/02_1s.jpg" alt="gallery thumbnail" /></em>
    <span><img src="images/02_1m.jpg" alt="gallery image" /></span> 	
  </a> 
</li>

CSS

ul#gallery, ul#gallery li{
	margin:0;
	padding:0;
	list-style:none;
	}
ul#gallery{
	margin:2em 0;
	}	
ul#gallery li{
	float:left;
	display:inline;
	margin-right:5px;
	}
ul#gallery a{
	float:left;
	display:inline;
	position:relative;
	}	
ul#gallery a:hover{
	background:none;
	z-index:100;
	}	
ul#gallery a span{
	display:none;
	}
ul#gallery a:hover span{
	float:left;
	display:block;
	cursor:pointer;
	}
ul#gallery a:hover em{
	display:none;
	}
ul#gallery a img{
	border:1px solid #999;
	padding:2px;
	background:#fff;
	}	
ul#gallery a:hover img{
	border:1px solid #000;
	}

4. Эффект 3D у кнопки

3D кнопка css

Эта техника показывает эффект нажатой кнопки. Нам понадобится в ссылку вложить тег span. Верхний и левый края ‛освещены", в то же время правый и нижний край ‛затемнены". Оттеним ссылку еще больше, обозначив цвета у нижнего и правого края тега span. Когда мышка наведена на ссылку цвета краев ссылки меняются. За счет отсутствия границ (правой и нижней) в теге span, при наведении курсора мышки на ссылку, создается эффект нажатой кнопки.

HTML

 <a href="#" class="button"><span>Roll over here</span></a>

CSS

a.button{
	float:left;
	font-size:110%;
	font-weight:bold;
	border-top:1px solid #999;
	border-left:1px solid #999;
	border-right:1px solid #333;
	border-bottom:1px solid #333;
	color:#333;
	width:auto;
	}	
a.button:hover{	
	border-top:1px solid #333;
	border-left:1px solid #333;
	border-right:1px solid #999;
	border-bottom:1px solid #999;	
	color:#333;	
	}	
a.button span{
	background:#d4d0c8 url(images/bg_btn.gif) repeat-x;	
	float:left;
	line-height:24px;
	height:24px;	
	padding:0 10px;	
	border-right:1px solid #777;
	border-bottom:1px solid #777;	
	}
a.button:hover span{
	border:none;
	border-top:1px solid #777;
	border-left:1px solid #777;
	background:#d4d0c8 url(images/bg_btnOver.gif) repeat-x;	
	cursor:pointer;	
	}

Источник cssglobe.com

Скачать одним архивом с letitbit:

Комментарии к статье

Добавить комментарий