Как в html изменить цвет рамки – Как сделать, чтобы цвет рамки вокруг изображения-ссылки менялся при наведении на него курсора мыши?

Содержание

CSS-рамка

CSS-рамка элемента представляет собой одну или несколько линий, окружающих содержимое элемента и его поля padding. Рамка задаётся с помощью краткого свойства border. Стиль рамки задается с помощью трех свойств: стиль, цвет и ширина.

Оформление рамок HTML-элементов с помощью CSS-свойств

1. Стиль рамки border-style

border_styleПо умолчанию рамки всегда отрисовываются поверх фона элемента, фон распространяется до внешнего края элемента. Стиль рамки определяет ее отображение, без этого свойства рамки не будут видны вообще. Для элемента можно задавать рамку для всех сторон одновременно с помощью свойства border-style или для каждой стороны отдельно с помощью уточняющих свойств border-top-style и т.д. Не наследуется.

border-style
(border-top-style, border-right-style, border-bottom-style, border-left-style)
Значения:
noneЗначение по умолчанию, означает отсутствие рамки. Также убирает рамку элемента из группы элементов с установленным значением данного свойства.
hiddenЭквивалентно none.
dotted
dotted
dashed
dashed
solid
solid
double
double
groove
groove
ridge
ridge
inset
inset
outset
outset
{1,4}
Одновременное перечисление четырех разных стилей для рамок элемента, только для свойства border-style:
{border-style: solid dotted none dotted;}
initialУстанавливает значение свойства в значение по умолчанию.
inheritНаследует значение свойства от родительского элемента.

Синтаксис

p {border-style: solid;}
p {border-top-style: solid;}

2. Цвет рамки border-color

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

border-color
(border-top-color, border-right-color, border-bottom-color, border-left-color)
Значения:
transparentУстанавливает прозрачный цвет для рамки. При этом ширина рамки остается. Можно использовать для смены цвета рамки при наведении курсора мыши на элемент, чтобы избежать смещение элемента.
цветЦвет рамок задается при помощи значений свойства color.
{border-color: #cacd58;}
{1,4}
Одновременное перечисление четырех разных цветов для рамок элемента, только для свойства border-color:
{border-color: #cacd58 #5faf8a #b9cea5 #aab238;}
initialУстанавливает значение свойства в значение по умолчанию.
inheritНаследует значение свойства от родительского элемента.

Синтаксис

p {border-color: #cacd58;}

3. Ширина рамки border-width

Ширина рамки задается с помощью единиц измерения длины или ключевых слов. Если для свойства border-style задано значение none, и для рамки элемента установлена какая-то ширина, то в данном случае ширина рамки приравнивается к нулю. Не наследуется.

border-width
(border-top-width, border-right-width, border-bottom-width, border-left-width)
Значения:
thin / medium / thickКлючевые слова, устанавливают ширину рамки относительно друг друга. Первое значение уже, чем второе, второе — тоньше третьего. Значение по умолчанию —
medium
width (px, em)
{border-width: 5px;}
{1,4}
Возможность одновременного задания четырех разных ширин для рамок элемента, только для свойства border-width:
{border-width: 5px 10px 15px 3px;}
initialУстанавливает значение свойства в значение по умолчанию.
inheritНаследует значение свойства от родительского элемента.

Синтаксис

p {border-width: 2px;}

4. Задание рамки одним свойством

Свойство border позволяет объединить в себе следующие свойства: border-width, border-style, border-color, например:

div {
width: 100px; 
height: 100px; 
border: 2px solid grey;
}

При этом заданные свойства будут применяться ко всем границам элемента одновременно. Если какое-то из значений не указано, его место займет значение по умолчанию.

5. Задание рамки для одной границы элемента

В случае, когда необходимо задать разный стиль границ элемента, можно воспользоваться краткой записью для соответствующей границы.
Перечисленные ниже свойства объединяют в одно объявление следующие свойства: border-width, border-style и border-color. Перечень свойств указывается в заданном порядке, при этом одно или два значения могут быть пропущены, в этом случае их значения примут значения по умолчанию.

Стиль верхней границы задается с помощью свойства border-top, нижней — border-bottom, левой — border-left, правой — border-right.

Синтаксис

p {border-top: 2px solid grey;}

добавление, управление цветом, шириной и стилем

Рамка представляет собой обычную линию, которая отображается вокруг элемента. Но совсем не обязательно применять рамку, окружающую элемент со всех сторон. Можно добавить ее только с требуемой стороны элемента. Например, если добавить рамку только с нижней стороны блочного элемента, то она будет производить тот же эффект, что и HTML тег <hr>, выступая в качестве разделителя.

Каждая рамка имеет три параметра, которыми мы можем управлять с помощью CSS: ширина, стиль и цвет, рассмотрим с помощью каких свойств можно их задавать и изменять:

  • border-width — задает ширину рамки. Для установки ширины можно использовать пиксели или ключевые слова: thin, medium, thick.
  • border-style — определяет стиль рамки с помощью одного из восьми возможных значений: solid, dotted, dashed, double, groove, ridge, inset и outset.

    возможные значения свойства border-style

  • border-color — указывает цвет рамки.

Вместо использования всех трех свойств, можно использовать всего одно — CSS свойство border, которое позволяет одновременно задать ширину, стиль и цвет для рамки в одном объявлении:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Название документа</title>
    <style>
      p.one {
        border-style: solid;
        border-width: 5px;
      }
      p.two {
        border-style: solid;
        border-width: medium;
		border-color: red;
      }
      p.three {
        border: 3px dashed #ffffff;
        background-color: #0000FF;
		color: #ffffff;
      }
    </style>
  </head>

  <body>
    <p>Первый абзац.</p>
    <p>Второй абзац.</p>
    <p>Третий абзац.</p>
  </body>
</html>
Попробовать »

Для управления рамкой отдельно с каждой стороны элемента, используются соответствующие свойства:

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

С этой темой смотрят:

Создание цветной рамки вокруг текста с помощью HTML и CSS

Рамка на HTML-страницах, созданная с помощью border color, помогает привлечь внимание к тексту или выделить любой элемент HTML.

Рамку вокруг любого текста можно создать с помощью HTML и CSS. В приведенном ниже примере мы окружили абзац (<p> </ p>) красной рамкой.


Чтобы создать приведенный выше эффект, использовался следующий код:

<p> Первый пример с текстом, окруженным красной рамкой.<br> В этом примере использовано несколько строк.</p>

В данном коде стиль определяет размер границы (px — пиксели), тип стиля и цвет границы (border color CSS). Стиль границы — это то, как на экране отображается рамка. Другие типы стилей границ — dotted, dashed, double, groove, ridge, inset и outset. Окраску границы определяет цвет, который будет использован для нее. В приведенном выше примере использовался красный цвет (#FF0000).

Определение стиля с помощью CSS

Стиль того, как элемент отображается на веб-странице, также можно через CSS-код, помещенный в раздел <head> </ head> HTML-страницы или внешнего файла CSS. Например, в приведенном ниже примере создается новый класс «borderexample», который может быть применен к любому HTML- тегу:

<style>
.borderexample
{
border-style:solid;
border-color:#287EC7;
}
</style>

Используя приведенный выше код, можно создать для элемента рамку с помощью внешних стилей CSS, которая аналогична предыдущему примеру с использованием HTML border color:

<p>Here is an example of a border created using CSS</p>

Данная публикация представляет собой перевод статьи «Create a colored border around text with HTML and CSS» , подготовленной дружной командой проекта Интернет-технологии.ру

Как сделать, чтобы цвет рамки вокруг изображения-ссылки менялся при наведении на него курсора мыши?

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
4.0+7.0+1.0+4.0+1.0+1.0+1.0+1.0+

Задача

Изменить параметры рамки вокруг изображения при наведении на него курсора мыши и восстановить обратно, когда курсор уходит прочь.

Решение

За изменение стиля элемента при наведении на него указателя мыши отвечает псевдокласс :hover. Для управления стилем ссылок этот псевдокласс добавляется к селектору A.

a { стиль обычной ссылки }
a:hover { стиль ссылки при наведении на нее курсора }

Также псевдокласс :hover допускается применять аналогичным способом к изображениям, но в браузере Internet Explorer версии 6.0 и ниже этот подход работать не будет. Все потому, что эта версия Internet Explorer понимает :hover только для ссылок. Поэтому для начала рассмотрим универсальный метод, работающий во всех браузерах.

Изображение превращается в ссылку, если тег <img> поместить внутрь контейнера <a>, при этом вокруг картинок автоматически добавляется рамка, показывающая что перед нами ссылка. Вид таких рамок управляется с помощью стилевого свойства border добавляемого к конструкции a img, которая сообщает, что стили следует применять к тегу <img> расположенному внутри <a>. Параметры рамки при наведении на рисунок курсора задаются конструкцией a:hover img, как показано в примере 1.

Пример 1. Изменение цвета рамки

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Цвет рамки</title>
  <style>
   a img {
    border: 3px solid #53da3f; /* Рамка вокруг изображения-ссылки */
   }         
   a:hover img  {
    border: 3px solid #f26522; /* Рамка при наведении на ссылку курсора мыши */
   }
  </style>
 </head>
 <body>
  <p>
   <a href="vinnie-the-pooh.html">
    <img src="images/figure.jpg" alt="Винни-Пух"></a>
   <a href="vinnie-the-pooh.html">
    <img src="images/figure.jpg" alt="Винни-Пух"></a>
  </p>
 </body>
</html>

Результат данного примера показан на рис. 1.

Рис. 1. Вид рамки до и после наведения курсора на изображение

Если хочется сделать изменение цвета рамки без применения ссылок, то свойство border допустимо применить непосредственно к селектору img, при этом в браузере Internet Explorer до версии 6.0 код работать не будет (пример 2).

Пример 2. Изменение параметра рамки вокруг изображения

img {
  border: 3px solid #53da3f; /* Рамка вокруг изображения */
}         
img:hover {
  border: 3px solid #f26522; /* Рамка при наведении на рисунок курсора мыши */
}

В данном примере рамка добавляется ко всем изображениям веб-страницы, если с помощью рамки требуется выделить только некоторые из них, добавьте к ним стилевые классы.

Создание таблиц в HTML — фон таблицы — рамка таблицы

При создании веб страниц очень часто необходимо представить некоторое содержимое страницы в виде таблиц.

Иногда таблицы используют для создания структуры страницы. Этот подход не совсем верный, потому что таблицы изначально не предназначались для позиционирования элементов страницы.

Для этой цели лучше всего пользоваться средствами CSS. Но в некоторых случаях таблицы являются незаменимыми и удобными для предоставления информации.

Материалы по теме:

За создание таблиц в HTML отвечает тег <table> и закрывающий тег </table>. Но вам наверняка уже известно, что таблицы состоят из строчек и ячеек. Поэтому для того, чтобы создать таблицу, нам необходимы еще два тега: это тег <tr></tr> который отвечает за создание строк, и тег, <td></td> отвечающий за создание ячеек.

Для того, чтобы посмотреть как все работает на практике, создадим таблицу, состоящую из двух строк и четырех ячеек. Код нашей таблицы будет следующий:

 <table>
<tr>
<td>1 - ячейка </td>
<td>2 - ячейка</td>
</tr>
<tr>
<td>3 - ячейка</td>
<td>4 - ячейка</td>
</tr>
</table>

Для того чтобы, увидеть что из этого получится, создайте html страницу используя код расположенный ниже. Если не знаете как создать HTML страницу, смотрите урок основы HTML.

<html> 
<head> <title>Таблица</title> 
<table> 
<tr>
<td>1 - ячейка </td> 
<td>2 - ячейка</td> 
</tr> 
<tr> 
<td>3 - ячейка</td> 
<td>4 - ячейка</td> 
</tr> 
</table> 
</head> 
</html>

У вас должно получиться следующее:

Как вы видите, наша таблица еще совсем не похожа на таблицу. Все это потому, что наши теги <table></table> и <td></td> имеют множество атрибутов, которые необходимо указать, чтобы у нашей таблицы появилась рамка, фон, размеры и т. д.

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

И так тег <table> имеет следующие атрибуты:

border — задает ширину рамки таблицы в пикселях, записывается так: <table border=»2″> </table>.

bordercolor – цвет рамки таблицы, данный атрибут поддерживает не все браузеры, поэтому вы можете и не увидеть заданный цвет рамки: <table border=»2″ bordercolor=»#548DD4″> </table>

Мы задали ширину рамки 2 пикселя, синего цвета, таблица примет следующий вид:

width – задает ширину таблицы в пикселях или процентах:

<table border="2" bordercolor="#548DD4"> </table>

height – высота таблицы в пикселях или процентах: <table border=»2″ bordercolor=»#548DD4″> </table>

Ширина таблицы будет 250 пикселей, а высота 150 пикселей, таблица будет выглядеть так:

align – выравнивание таблицы;

align=left – таблицы будет выровнена по левому краю;

align=right – таблица будет выровнена по правому краю:

<table border=2 bordercolor="#548DD4" align="right"> </table>

Наша таблица должна выровняться по правому краю.

bgcolor – цвет фона таблицы, bgcolor=#FFC000 – цвет фона таблицы будет желтый:

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000"> </table>

Таблица получит следующий вид:

background – при помощи данного атрибута можно задать изображение, которое будет фоном таблицы.

В качестве примера сохраните маленькое изображение, которое вы видите в скобках () в ту папку, где у вас находится страница с таблицей, а к тегу <table> добавьте background=»fon.gif » весь код:

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000" background= "fon.gif">

Таблица примет следующий вид:

сellpadding – атрибут, задающий левый, правый, верхний и нижний отступы внутри ячейки. Например, если к нашему тегу <table> добавить сellpadding=10, то текст, написанный внутри ячеек, получит отступ.

cellspacing – задает отступ между ячейками таблицы.

Если вы присмотритесь к нашей таблице, то увидите, что между рамками ячеек имеется небольшое пространство, это и есть отступ между ячейками, он задается по умолчанию. Для того, чтобы его убрать, достаточно в теге <table> прописать cellspacing=0. Весь код:

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000" background= "fon.gif" cellspacing="0" сellpadding="10">

В результате наши ячейки прижались друг к другу, а текст внутри ячеек получил отступ:

hspace — задает промежуток от таблицы в лево и в право в пикселях, записывается так: hspace=20

nowrap – запрещает перенос слов в ячейке, записывается просто nowrap

Последние два атрибута применяются крайне редко, поэтому пример кода с ними я не показываю.

Теперь рассмотрим атрибуты тега <td>, некоторые из них такие же, как и атрибуты тега <table>

width — ширина ячейки в пикселях или в процентах.

height – высота ячейки в пикселях или процентах.

Например, зададим ширину первой ячейки первой строки в 30% — width=30% , а высоту первой ячейки второй строки в 100px. Код будет таким:

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000" background="fon.gif" cellspacing="0" сellpadding="10"> 
<tr> 
<td>1 - ячейка </td>
<td>2 - ячейка</td> 
</tr> 
<tr> 
<td>3 - ячейка</td> 
<td>4 - ячейка</td> 
</tr> 
</table>

Наша таблица примет следующий вид:

Заметьте, достаточно задать одной ячейке высоту или ширину и все ячейки этой строки или столбца примут такой же размер. Поэтому если необходимо задать, например определенную высоту ячеек то достаточно указать этот параметр для одной ячейки и все остальные ячейки строки станут такими же.

align – выравнивает содержимое ячеек, имеет следующие значения:

align=»lef» – содержимое ячейки будет выровнено по левому краю;

align=»right» – содержимое будет выровнено по правому краю;

align=»center» – содержимое будет выровнено по центру ячейки.

Добавим эти атрибуты и значения в наш код и выровняем содержимое 1 — й ячейки по левому краю (по левому краю содержимое выравнивается по умолчанию, однако в некоторых случаях данный атрибут необходим), содержимое 2 – й ячейки выровняем по правому краю, а 4 -й по центру.

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000" background= "fon.gif" cellspacing="0" сellpadding="10"> 
<tr> 
<td align="lef" >1 - ячейка </td> 
<td align="right" >2 - ячейка</td> 
</tr> 
<tr> 
<td>3 - ячейка</td> 
<td align="center" >4 - ячейка</td> 
</tr> 
</table>

bgcolor – при помощи данного атрибута можно задать цвет ячейки.

background – устанавливает изображение в виде фона ячейки.

С данными атрибутами мы уже встречались, рассматривая атрибуты тега <table>. Работают они одинаково, только в этом случае ими задается фон ячейки. Например, зададим цвет фона 2-й ячейки желтым, а в качестве фона 4-й ячейки установим следующее изображение ().

Для этого в наш код добавим необходимые атрибуты, для наших ячеек bgcolor=»#FFFF00″ для 2-й ячейки и background= «fon.jpg» для 4-й ячейки. В результате наша таблица станет выглядеть так:

Как вы видите, несмотря на то что мы задавали фон самой таблицы, если задать фон ячеек таблицы, то отображаться будет именно тот фон который мы задали для ячеек.

bordercolor – задает цвет рамки ячейки.

C этим атрибутом мы так же встречались, рассматривая атрибуты тега <table>. Напоминаю, что он работает не во всех браузерах. Обратите внимание на то, что у тега <td> нет атрибута border обозначающего рамку ячейки. Зададим цвет рамки 2 – й ячейки красным для этого ко второй ячейке добавим атрибут bordercolor=»#FF0000″

Существует еще один атрибут, предназначенный для выравнивания содержимого ячеек:

valign – он производит выравнивание содержимое ячеек по вертикали.

Имеет следующие значения:

valign=»top» – выравнивание содержимого ячейки по верхнему краю;

valign=»bottom» – выравнивание содержимого ячейки по нижнему краю;

valign=»middle» – выравнивание посередине ячейки;

valign=»baseline» – выравнивание содержимого ячейки по базовой линии.

Добавим эти атрибуты к каждой из наших 4-х ячеек.

<table border="2" bordercolor="#548DD4" align="right" bgcolor="#FFC000" background= "fon.gif" cellspacing="0" сellpadding="10"> 
<tr> 
<td align="lef" valign="top">1 - ячейка</td> 
<td align="right" bgcolor="#FFFF00" bordercolor="#FF0000" valign="bottom">2 - ячейка</td> 
</tr> 
<tr> 
<td valign="middle">3 - ячейка</td> 
<td align="center" background= "fon.jpg" valign="baseline">4 - ячейка</td> 
</tr> 
</table> 

Наша таблица примет следующий вид:

Последнее что нам необходимо рассмотреть в этом уроке, это объединение ячеек таблицы. Для того чтобы объединить несколько ячеек в строке, существует атрибут colspan=»» где в кавычках указывается количество ячеек которое необходимо объединить.

Чтобы объединить ячейки по вертикали т. е. в столбце, необходимо использовать атрибут rowspan=»» где в кавычках указывается количество ячеек, которое необходимо объединить.

Для того чтобы увидеть как это работает, создайте новую таблицу содержащую три строки по три ячейки в каждой. Код этой таблицы будет следующий:

<table border="1" cellspacing="0" сellpadding="0"> 
<tr> 
<td>1 - ячейка </td> 
<td >2 - ячейка</td> 
<td>3 - ячейка</td> 
</tr> 
<tr> 
<td>4 - ячейка</td> 
<td>5 - ячейка</td> 
<td>6 - ячейка</td> 
</tr> 
<tr> 
<td>7 - ячейка</td> 
<td>8 - ячейка</td> 
<td>9 - ячейка</td> 
</tr> 
</table>

Теперь объединим 1-ю и 2-ю ячейку в строке и 3-ю, 6-ю и 7-ю ячейку в ряду. Код нашей таблицы будет следующий:

<table border="1" cellspacing="0" сellpadding="0"> 
<tr> 
<td colspan="2">1 и 2 – ячейки объединенные </td> 
<td rowspan="3">3-6-9 – ячейки объединенные</td> 
</tr> 
<tr> 
<td>4 - ячейка</td> 
<td>5 - ячейка</td> 
</tr> 
<tr> 
<td>7 - ячейка</td> 
<td>8 - ячейка</td> 
</tr> 
</table>

Обратите внимание, что теги той ячейки, которая объединяется, не записываются. Наша таблица будет иметь следующий вид:

Это были последние атрибуты ячеек. Как вы можете видеть атрибутов у тегов <table> и <td> множество. Это позволяет размещать в таблицах различное содержимое, позиционируя его и оформляя необходимым образом.

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

Материал подготовлен проектом: webmastermix.ru

Рекомендуем ознакомиться:

Подробности

Обновлено: 04 Сентябрь 2013

Создано: 01 Февраль 2010

Просмотров: 87760

Как добавить вокруг текста рамку определенного цвета?

Для создания рамки вокруг текста используйте стилевое свойство border, добавляя его к соответствующему селектору. Например, если для текста применяется тег <p>, то для него надо установить следующий стиль.

P {
 border: 1px solid red; /* Толщина рамки в пикселах,
                           тип границы (в данном случае сплошная линия) и
                           цвет линии */
 padding: 5px; /* Расстояние от текста до рамки */
}

Применение свойства border к текстовому абзацу продемонстрировано в примере 1.

Пример 1. Рамка вокруг абзаца

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Рамка вокруг текста</title>
  <style>
   p {
    border: 1px solid red;
    padding: 10px;
   }
  </style>
 </head>
  <body>
  <p>Нет страшнее зверя в сибирских лесах, чем разъяренный заяц-мутант.  
  Вы видели, какие у него зубы? О, даже медведь боится этих зубов! А, как известно, 
  медведи больше ничего не боятся.</p>
 </body>
</html>

Результат данного примера показан на рис. 1.

Рис. 1. Вид рамки вокруг абзаца

Следует учитывать, что в тексте может быть несколько абзацев и вокруг каждого тогда возникнет рамка. В подобных случаях лучше воспользоваться тегом <div>, для которого и требуется установить стиль. А текст добавить уже внутрь этого контейнера (пример 2).

Пример 2. Рамка вокруг слоя

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Рамка вокруг текста</title>
  <style>
   .outline {
    border: 1px solid red;
    padding: 0 10px;
   }
  </style>
 </head>
 <body>
  <div>
   <p>Перед тем как убить героя, антагонист обязательно рассказывает ему про все 
   свои злодеяния, чтобы создать необходимую паузу. Разумеется, любой протагонист 
   весьма умело использует данное время против самого злодея.</p>
   <p>Из этого правила есть только одно исключение. Герой может не суетиться, 
   тянуть время, и вообще ничего не делать, потому что на помощь придут его 
   друзья.</p>
  </div>
 </body>
</html>

Как сделать, чтобы текстовое поле при получении фокуса меняло цвет рамки?

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
8.0+1.0+7.0+1.0+1.0+1.0+1.0+

Рамка вокруг текстового поля создается с помощью стилевого свойства border, которое добавляется к селектору INPUT. Фокусом же называется активность элемента, в данном случае, когда курсор находится внутри текстового поля и пользователь может вводить символы с клавиатуры.

За работу фокуса отвечает псевдокласс :focus, его необходимо добавить к селектору INPUT или TEXTAREA, как показано в примере 1.

Пример 1. Использование псевдокласса :focus

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <metacharset="utf-8">
  <title>Изменение цвета рамки</title>
  <style>
   INPUT.text {
    border: 1px solid #ccc; /* Исходная рамка вокруг поля */
    width: 80%; /* Ширина поля */ 
   }
   INPUT.text:focus {
    border: 1px solid #39c; /* Рамка при получении фокуса */
   }
  </style>
 </head>
 <body>
  <form action="">
   <p><input type="text" size="30" /></p>
   <p><input type="submit" value="Отправить" /></p>
  </form>
 </body>
</html>

Результат примера показан на рис. 1.

Рис. 1. Изменение стиля поля при получении фокуса

В данном примере вводится класс text, чтобы стиль сработал только для текстового поля, а не для кнопки.

Поскольку псевдокласс :focus не поддерживается браузером Internet Explorer до версии 8.0, для него можно воспользоваться скриптами. С этой целью поможет событие onfocus, которое срабатывает при получении фокуса и onblur, при его потере. Предварительно создаем два класса, они задают вид оформления обычного текстового поля и его же при получении фокуса. Далее к тегу <input> добавляем onfocus=»this.className=’focus'» и onblur=»this.className=’text'». Здесь focus и text это названия классов (пример 2).

Пример 2. Использование скриптов

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Изменение цвета рамки</title>
  <style>
   INPUT.text {
    border: 1px solid #ccc; /* Исходная рамка вокруг поля */
    width: 80%; /* Ширина поля */ 
   }
   .focus {
    border: 1px solid #39c; /* Рамка при получении фокуса */
    width: 80%; /* Ширина поля */
   }
  </style>
 </head>
 <body>
  <form action="">
    <p><input type="text" size="30" 
        onfocus="this.className='focus'" onblur="this.className='text'" /></p>
    <p><input type="submit" value="Отправить" /></p>
  </form>
 </body>
</html>

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *