Интересное применение каскадных таблиц css и html


В данной статье приводятся малоизвестные или малоиспользуемые приемы применения html и css, приводящие к интересным эффектам. Данная страничка постоянно обновляется и в нее добавляются разные эффекты, которые можно использовать при строительстве вашего сайта.



Содержание:


  1. Как сделать "Бегущую строку"?

  2. Как сделать вывод текста телетайпом?

  3. Как выделить первую букву параграфа (Создать буквицу)?

  4. Как изменить внешний вид курсора?

  5. Как создать простую 3D кнопку средствами css?

  6. Как изменить размеры и цвет линии средствами css?

  7. Как, средствами css, сделать у рамок закругленные углы?

  8. Как сделать иконку для сайта, чтобы она отражалась в поисковиках?

  9. Как сделать цифровые ссылки на страницы одной тематики?

  10. Как сделать всплывающие подсказки?




В. Как сделать "Бегущую строку"?

О. Для придания своему сайту своебразного стиля иногда применяют т.н."бегущую строку". "Бегущей строкой" удобно выводить какие-либо новости или что-то, на что необходимо обратить внимание пользователя. Итак, как же это реализовать? Проще некуда. Создает бегущую строку парный тэг marquee.


<p><marquee>Здесь располагается Ваш замечательный текст.</marquee></p>

Выглядит это так:


Здесь располагается Ваш замечательный текст.

Текст можно заставить двигаться в любую сторону. Для этого используется оператор direction со значениями left, right, up или down. А чтобы изменить скорость движения текста - используется оператор scrolldelay со значениями от 0 до 1000. Значение 0 - самое быстрое движение текста.

Теперь попытаемся все суммировать. Создадим класс css, где укажем размеры блока движущегося текста:

.go {
margin-left: 100px;		/*Отступ слева*/
padding: 5px;			/*Отступ вокруг текста*/
width: 250px;			/*Ширина блока*/
height:100px;			/*Высота блока*/
border: solid 1px black;	/*Рамка*/
color: red;			/*Цвет текста*/
}

Предположим, что текст должен двигаться вверх в окне, размерами 250 на 100 пикселей и обрамленную рамкой. Ширину блока и рамку мы установили в стилях, а вот высоту нужно установить в html-коде. Для того, чтобы останавливалось движение при наведении курсора, сюда добавлены параметры onmouseover=this.stop() и onmouseout=this.start(). В нужном месте пишем следующий код:


<div class="go"><marquee behavior="scroll" scrolldelay="200" direction="up" onmouseover=this.stop() onmouseout=this.start()>Здесь вставляете нужный Вам текст.</marquee></div>

И оп-ля. Получаем результат:


Вдох глубокий, руки шире,
Не спешите - три-четыре! -
Бодрость духа, грация и пластика!
Общеукрепляющая,
Утром отрезвляющая,
Если жив пока еще - гимнастика!

C таким же успехом можно перемещать и рисунки. Просто вместо текста вставляете рисунок. Ну например так:


<div class="go"><marquee scrolldelay="100" direction="left" onmouseover=this.stop() onmouseout=this.start()><img src="Путь к вашей картинке" width="468" height="100" alt=" "></marquee></div>

И вот что должно получиться:


Мой банер


Назад




В. Как сделать вывод текста телетайпом?

О. Здесь без скрипта не обойтись. Ниже приведен листинг самого скрипта. Нужный текст прописывается в самом теле скрипта (см.пример). Строки должны быть взяты в кавычки и разделятся запятой. Если необходимо выделить параграф, то строки разделяются пустыми кавычками.


<script language="javascript">
<!--
var tl = new Array(
"",
" Приветствую Вас, дорогие друзья!",
"",
" Здесь располагается первая строка.",
" Здесь располагается вторая строка.",
" Здесь располагается третья строка и т.д.",
"",
"",
" Мой сайт: http://shad-55.narod.ru"
);

var speed = 60;
var index = 0; text_pos = 0;
var str_length = tl[0].length;
var contents, row;

function type_text()
{
    contents = '';
    row = Math.max(0, index-13);
    while (row<index) contents += tl[row++] + '\r\n';
    document.forms[0].elements[0].value = contents + tl[index].
    	substring(0,text_pos) + "_";
    if (text_pos ++== str_length)
    {
        text_pos = 0;
        index++;
        if (index != tl.length)
        {
            str_length = tl[index].length;
            setTimeout("type_text()", 100);
        }
    } else
    setTimeout("type_text()", speed);
}
//-->
</script>

Здесь показан код окна, в который будет выводиться Ваш текст. С размерами и фоном поиграйтесь сами.


<center>
<form>
<textarea rows="15" cols="80" style="width: 500; border: 1px solid; background-color:#EAF2F4;">
</textarea>
</form>
</center>

Здесь запускается сам скрипт, код которого вставляется в необходимом вам месте


<script>
type_text()
</script>

У Вас должно получится так:



Правда красиво? Пользуйтесь... Для перезапуска нажмите F5.


Назад




В. Как выделить первую букву параграфа?

О. Чтобы выделить первую букву - Создать буквицу, испльзуется псевдостиль first-letter. Для начала создадим класс стиля для буквицы.


.bukvica:first-letter {		/*Стиль для буквицы*/
font-family: Arial, serif;	/*Шрифт буквицы*/
color: red;			/*Цвет буквицы*/
font-size: 150%;		/*Размер буквицы*/
font-style: italic;    		/*Наклонный шрифт*/
font-weight: bold;    		/*Жирный шрифт*/
}

В нужном месте применяем стиль для параграфа следующим образом:

<p class=bukvica>Здесь располагается текст, в котором мы хотим выделить первую букву.</p>

У Вас должно получиться так:


Создать сайт ПРОСТО, с точки зрения его написания. Посетите сайт Новичок для новичков и Вы убедитесь в этом сами.


Назад




В. Как изменить внешний вид курсора?

О. Вид курсора определяется с помощью CSS свойства cursor. В нужном месте необходимо определить стиль курсора в тэге <span>.

Ниже приведен список всех курсоров, доступных в css. Наведите курсор мыши на определенную строку, чтобы увидеть как изменяется курсор. Можно также определить пользовательский курсор, который Вы придумали и нарисовали сами. Укажите в стилях путь к вашему файлу курсора. Файл курсора может быть в формате cur, ani (только IE).


  • <span style="cursor: default">По умолчанию</span>
  • <span style="cursor: url(cursor.cur), auto">Пользовательский</span>
  • <span style="cursor: auto">Авто</span>
  • <span style="cursor: crosshair">Крест</span>
  • <span style="cursor: pointer">Палец</span>
  • <span style="cursor: move">Перемещение</span>
  • <span style="cursor: e-resize">Горизонтальный</span>
  • <span style="cursor: ne-resize">Диагональный вправо</span>
  • <span style="cursor: nw-resize">Диагональный влево</span>
  • <span style="cursor: n-resize">Вертикальный</span>
  • <span style="cursor: se-resize">Диагональный влево</span>
  • <span style="cursor: sw-resize">Диагональный вправо</span>
  • <span style="cursor: s-resize">Вертикальный</span>
  • <span style="cursor: w-resize">Горизонтальный</span>
  • <span style="cursor: text">Текстовый</span>
  • <span style="cursor: wait">Ожидание</span>
  • <span style="cursor: help">Справочный</span>

Назад




В. Как создать простую 3D кнопку средствами css?

О. Простую 3D кнопочку сделать довольно просто. Вначале пишем следующие стили для ссылок.

Примечание: Чтобы данные стили не мешали работе основных ссылок, я определил для ссылок кнопок класс button

a.button, a.button:wisited {	
margin-left: 280px;	/*Отступ кнопки слева*/
color:#000; 		/*Цвет надписи на кнопке*/
display: block; 	/*Делаем кнопку блочным элементом*/
border:1px solid; 	/*Одинарная рамка толщиной в 1 пиксель*/
border-color: #aaa #000 #000 #aaa; /*Цвет рамки - верхняя и левая - темно-серые, 
				    а правая и нижняя - черные*/
text-decoration:none;	/*Отменяем подчеркивание ссылки*/ 
width:8em; 		/*Ширина кнопочки*/
text-align:center; 	/*Центровка текста кнопки*/
height:2em; 		/*Высота кнопочки*/
line-height:2em; 	/*Сдвиг надписи по вертикали сверху*/
background:#7FFF00; 	/*Фон ненажатой кнопки*/
font-weight:bold	/*Жирный шрифт надписи*/
}

a.button:hover {
color:#000; 		/*Цвет надписи на нажатой кнопке*/
background:#00FF00; 	/*Фон нажатой кнопки*/
position:relative; 	/*Задаем относительное свободное позиционирование*/
top:1px; left:1px; 	/*Сдвигаем фон сверху и слева на 1 пиксель*/
border-color: #000 #aaa #aaa #000}  /*Цвет рамки - верхняя и левая - черные, 
				      а правая и нижняя - темно-серые*/	
}

Теперь в нужном месте прописываем следующий html-код:


<a href="#" class="button">Название вашей кнопочки</a>

Получилась вот такая красота!

Ваша кнопочка

Назад




В. Как изменить размеры и цвет линии средствами css?

О. Изменить размеры и цвет линии также просто. Но необходимо учитывать следующее: По умолчанию в Opera и Mozilla вокруг линии существует рамка, а в IE рамки нет. Для того, чтобы в разных браузерах линия выводилась одинаково, необходимо устанавливать свойство рамок. К тому же по умолчанию в Opera рамки плотно прижаты друг к другу без внутренней области и для того, чтобы изменить цвет линии необходимо указывать кроме цвета фона этой области еще и ее высоту (толщину).

Для примера создадим линию длиною в 70%, толщиною в 6 пикселей, голубого цвета и без рамки.


hr {
color:#00BFFF;			/*Цвет линии*/
background-color:#00BFFF;	/*Цвет линии для Opera и Mozilla*/
height: 6px;			/*Толщина линии*/
width: 70%;			/*Длина линии*/
border-width:0px; 		/*Убираем рамку вокруг элемента */
}

В нужном месте вставляйте код <hr> и вуаля... получаете желаемый результат.




В IE линия позиционируется прижатой к левой стороне. Для того, чтобы разместить линию по центру, возьмите тэг <hr> в двойной тэг<center>


Если вам необходима вокруг линии рамочка, измените ее стиль, например так:


border:3px solid red;		/*толщина 3 пикселя, одинарная, красная*/



К сожалению в IE до 7 верси включительно и в Mozilla Firefox рамочка вокруг линии не получается. Окрашивается только сама линия.


Назад




В. Как средствами css сделать у рамок закругленные углы?

О. Иногда возникает необходимость сделать у рамочек закругленные края. Можно подставить в углах, нарисованные в Фотошопе, специальные уголки. А можно реализовать эту идею исключительно средствами css. Пишем следующие стили и попробуем в них разобраться.


.konteyner {	/*Общие стили для элемента*/
display: block;		/*Делаем элемент блочным*/
padding: 0;		/*Обнуляем внутренние отступы*/
margin: 0 auto;		/*Центрируем элемент*/
width: 33%;		/*Определяем общую длину элемента*/
margin-bottom:25px;	/*Задаем отступ снизу*/
position:relative;	/*Задаем относительное свободное позиционирование*/
}
b.top b, b.bottom b{ 	/*Стили для тэга b*/
display:block; 		/*Делаем элемент блочным*/
overflow: hidden;  	/*Скрыть все, что выходит за пределы*/
}
.r1, .r2, .r3, .r4 { 	/*Стили для радиусов*/
border-left:1px solid #333;	/*Толщина рамки и цвет закругления слева*/
border-right:1px solid #333;	/*Толщина рамки и цвет закругления справа*/
height:1px; 			/*Толщина рамки*/
}
.r1{ 
background:#333;	/*Цвет верхней и нижней линии рамки*/
margin:0px 5px;		/*Позиционирование фона закругления рамки*/
}
.r2{ 
background:#FFE4C4;	/*Цвет фона радиуса закругления*/
margin:0px 3px; 	/*Позиционирование фона закругления рамки*/
border-width:0px 2px;	/*Длина линии закругления*/
}
.r3{ 
background:#FFE4C4;	/*Цвет фона радиуса закругления*/
margin:0px 2px;		/*Позиционирование фона закругления рамки*/
}
.r4{ 
background:#FFE4C4;	/*Цвет фона радиуса закругления*/
margin:0px 1px; 	/*Позиционирование фона закругления рамки*/
height:2px;		/*Высота рамки до закругления*/
}
.txtblock {	/*Текстовый блок*/
margin: 0px;	/*Обнуляем внешний отступ*/
padding: 5px;	/*Устанавливаем внутренний отступ*/
border:solid #333; /*Цвет левой и правой рамки*/
border-width:0px 1px 0px 1px; /*Позиционирование рамки*/
background:#FFE4C4;	/*Фон текстового блока*/
color: red;		/*Цвет шрифта текстового блока*/
}

Теперь в нужном Вам месте вставляем следующий код:


<div class="konteyner">
<b class="top">
<b class="r1"></b> <b class="r2"></b> <b class="r3"></b> <b class="r4"></b> </b>
<div class="txtblock">
<p>
;Содержимое текстового блока</p>
</div>
<b class="bottom">
<b class="r4"></b> <b class="r3"></b> <b class="r2"></b> <b class="r1"></b> </b>
</div>


Вот как должно получиться. Красота-а-а-а...


Содержимое Вашего текстового блока

Если кому интересна глубина понимания техники закругления уголков - вот ссылка себе в ущерб: Создание закругленных углов.


Назад




В. Как сделать иконку для сайта, чтобы она отражалась в поисковиках?

О. Для привлекательного и запоминающего вида сайта можно создать иконку, которая будет отображаться во вкладках браузеров, в заголовке страниц и в поисковике Яндекс. Ну, например, так:

Иконка Иконка создается в любом графическом редакторе и сохраняется с размерами 16х16 пикселей и с именем favicon.ico.


Затем иконка переносится на сайт в корневую директорию. Теперь, чтобы иконка была видна, необходимо указать к ней путь и свойства. Между тэгами <head> и </head> необходимо вставить такую строку <link rel="icon" href="Абсолютный путь к вашей иконке" type="image/x-icon">. С этого момента иконка будет видна и в поисковике, и во вкладках браузеров, и в заголовке страницы, где эта иконка прописана. В принципе, иконки на разных страницах вашего сайта могут быть разные. Нужно только, чтобы к ней был прописан правильный путь. Существуют программы, которые автоматически конвертируют любую картинку в иконку с размерами 16х16 пикселей. Одну из таких программ можно найти и скачать во вкладке Полезные программы для сайтов.


Назад




В. Как сделать цифровые ссылки на страницы одной тематики?

О.Бывает что по одной тематике у Вас несколько страниц и необходимо между ними реализовать связь. Сделать это можно, используя цифровые ссылки. Например у нас есть шесть страниц и нам необходимо организовать переход на любую из них или последовательно страницу за страницей.

Пишем следующие стили:


.page, .num {		/*Классы для текстовых и цифровых ссылок*/
	text-align: center;	/*Центровка надписи*/
	color:#5A5B5C;		/*Цвет надписи*/
	background:#ECF6FE;	/*Фон надписи*/
	padding:2px 4px 3px 4px;     /*Отступы*/
	}
.page a, .num {		/*Для ссылок этих классов*/
	text-decoration:none	/*Ссылки без подчеркивания*/
	}
.num {			/*Класс цифровых ссылок*/
	width: 10px;		/*Ширина*/
	border:1px solid #B0C8EA;    /*Рамка*/
	}
.activ {		/*Класс текущей страницы*/
	color:#999999;		/*Цвет надписи*/
	border:1px solid #999999;    /*Рамка*/
	background:#fff;	/*Фон*/
	padding:2px 4px 3px 4px;     /*Отступы*/
	width: 8px;		/*Ширина*/
	}
.pagin {		/*Класс для строки текущей страницы*/
	padding-bottom:7px;	/*Отступ снизу*/
	font:bold 8pt Verdana,Arial,Helvetica,sans-serif;   /*Шрифт*/
	color:#666666;		/*Цвет шрифта*/
	text-align: center;	/*Центровка строки*/
	}

Теперь вставляем в нужном месте следующий код:


<div class=page>
<a href="Путь к вашей страничке.html" title="Предыдущая">Предыдущая</a> 
<span class=page1>
<a href="Путь к вашей страничке.html" title="1">1</a>
</span>
<span class=activ>
2
</span>
<span class=page1>
<a href="Путь к вашей страничке.html" title="3">3</a>
</span>
...
<span class=page1>
<a href="Путь к вашей страничке.html" title="6">6</a>
</span> 
<a href="Путь к вашей страничке.html" title="Следующая">Следующая</a>
</div>
<div class=pagin>Страница 2 из 6</div>


Должно получиться вот так:



Страница 2 из 6

Второй, более профессиональный вариант:


div.newpag {
	padding: 3px 3px 3px 3px;
	margin: 3px;
	text-align: center
}
div.newpag a {
	border: #dedfde 1px solid; 
	padding: 2px 6px 2px 6px;
	background-position: 50% bottom;
	color: #0061de;
	margin-right: 3px;
	text-decoration: none
}
div.newpag a:hover {
	border: #000 1px solid;
	background-image: none;
	color: red;
	background-color: #c8f0fe
}
div.meneame a:active {
	border: #000 1px solid;
	background-image: none;
	color: #fff;
	background-color: #0061de
}
div.newpag span.current {
	padding: 2px 6px 2px 6px;
	font-weight: bold;
	color: gray;
	margin-right: 3px;
}
div.newpag span.disabled {
	padding: 2px 6px 2px 6px;
	color: #adaaad;
	margin-right: 3px;
}
.pagin {
	padding-bottom:7px;
	font:bold 8pt Verdana,Arial,Helvetica,sans-serif;
	color:#666666;
	text-align: center;
	}

А вот html код для аж 200 страниц, хотя их может быть и 1000:


<p>
<div class="flickr">
<a href="Путь к предыдущей странице">Предыдущая</a>
<a href="Путь к странице 1">1</a>
<span class="current">2</span>
<a href="Путь к странице 3">3</a>
<a href="Путь к странице 4">4</a>
<a href="Путь к странице 5">5</a>
<a href="Путь к странице 6">6</a>
<a href="Путь к странице 7">7</a>
...
<a href="Путь к странице 199">199</a>
<a href="Путь к странице 200">200</a>
<a href="Путь к следующей странице">Следующая</a>
</div>
</p><br>
<div class=pagin>Страница 2 из 200</div>



Страница 2 из 200

Назад




В. Как сделать всплывающую подсказку?

О.Чтобы сделать текст более информативным, в некоторых случаях необходимо вставлять подсказки. Один из способов вывода всплывающих подсказок приведен ниже:


.tooltip {
border-bottom: 1px dotted #000000; color: #000000; outline: none;
cursor: help; text-decoration: none;
position: relative;
		}
.tooltip span {
margin-left: -999em;
position: absolute;
		}
.tooltip:hover span {
border-radius: 5px 5px; 
-moz-border-radius: 5px; 
-webkit-border-radius: 5px; 
box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1); 
-webkit-box-shadow: 5px 5px rgba(0, 0, 0, 0.1);
-moz-box-shadow: 5px 5px rgba(0, 0, 0, 0.1);
font-family: Calibri, Tahoma, Geneva, sans-serif;
position: absolute; left: 1em; top: 2em; z-index: 99;
margin-left: 0; 
width: 250px;
		}
.tooltip:hover img {
border: 0; margin: -10px 0 0 -55px;
float: left; position: absolute;
		}
.tooltip:hover em {
font-family: Candara, Tahoma, Geneva, sans-serif; 
font-size: 1.2em; 
font-weight: bold;
display: block; padding: 0.2em 0 0.6em 0;		}

.classic { padding: 0.8em 1em; }
.custom { padding: 0.5em 0.8em 0.8em 2em; }
* html a:hover { background: transparent; }
.classic {background: #FFFFAA; border: 1px solid #FFAD33; }
.critical { background: #FFCCAA; border: 1px solid #FF3334;	}
.help { background: #9FDAEE; border: 1px solid #2BB0D7;	}
.info { background: #9FDAEE; border: 1px solid #2BB0D7;	}
.warning { background: #FFFFAA; border: 1px solid #FFAD33; }

В нужном месте вы можете вставить следующие коды:


Классическая подсказка

<a class="tooltip" href="#">Классическая подсказка<span class="classic">Здесь пишется текст подсказки</span></a>

Критическое сообщение

<a class="tooltip" href="#">Критическое сообщение<span class="custom critical"><img src="Здесь указывается путь к сопутствующей картинке" alt="Ошибка" height="48" width="48" />Критическое сообщениеЗдесь пишется текст подсказки</span></a>

Предупреждение

<a class="tooltip" href="#">Предупреждение<span class="custom warning"><img src="Здесь указывается путь к сопутствующей картинке" alt="Предупреждение" height="48" width="48" />ПредупреждениеЗдесь пишется текст подсказки</span></a>

Информация

<a class="tooltip" href="#">Информация<span class="custom info"><img src="Здесь указывается путь к сопутствующей картинке" alt="Информация" height="48" width="48" />ИнформацияЗдесь пишется текст подсказки</span></a>

Помощь

<a class="tooltip" href="#">Помощь<span class="custom info"><img src="Здесь указывается путь к сопутствующей картинке" alt="Помощь" height="48" width="48" />ПомощьЗдесь пишется текст подсказки</span></a>

Пример

Наведите курсор мыши на надписи чтобы увидеть: классическую подсказкуЗдесь пишется текст подсказки, критическое сообщениеОшибкаКритическое сообщениеЗдесь пишется текст подсказки, помощьПомощьПомощьЗдесь пишется текст подсказки, информацияИнформацияИнформацияЗдесь пишется текст подсказки и предупреждениеПредупреждениеПредупреждениеЗдесь пишется текст подсказки.



Назад





Страница 2 из 3

Реклама


Hosted by uCoz