Как создать свой сайт

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта
Главная Справочные данные JavaScript

Справочные данные по JavaScript - Объект style

E-mail Печать
Индекс материала
Справочные данные по JavaScript
Правила написания скриптов
Объектная модель документа
Объект document
Объект location
Объект style
Объект window
Объект layer
Объект navigator
Объект screen
Свойства объекта history
Алфавитный указатель свойств
Алфавитный указатель методов
Алфавитный указатель событий браузера
Совместная работа с HTML
Защита и усложнение javascript кода
Все страницы

 

Объект style

Как и все остальные объекты, style поддерживает ряд свойств и методов. Их можно разделить на две группы:

* задающие стиль документа

и

* относящиеся к самому объекту style.

Свойства первой группы в целом аналогичны соответствующим атрибутам стиля и имеют почти такие же имена за тем исключением, что символы "-" убираются, т.к. не соответстуют соглашению об именах JavaScript, а первые буквы всех слов, образующих имя атрибута, кроме первого, делаются прописными. В следующей таблице показаны примеры преобразования имен атрибутов стиля в имена свойств объекта style, устанавливающих стиль элемента.
Атрибут стиля     Свойство объекта
background-attachment     backgroundAttachment
borderBottomColor
font-family     fontFamily
z-index     zIndex

По аналогии вы можете преобразовать все атрибуты стилей в свойства объекта style. Все не относящееся к стилю свойства объекта style перечислены в нижерасположенной таблице. Кроме того, у этого объекта имеются методы getAttribute, removeAttribute и setAttribute. Но эти дополнительные свойства и методы поддерживаются только IE начиная с 4.0
Свойство     Описание
cssText     текстовое представление стиля (параметр атибута STYLE).
pixelHeight     Высота элемента в пикселах.
pixelLeft     Смещение левого края элемента в пикселах.
pixelTop     Смещение верхнего края элемента в пикселах.
pixelWidth     Ширина элемента в пикселах.
posHeight     Высота элемента в тех единицах измерения, в которых она была установлена в определении стиля.
posLeft     Смещение левого края элемента в тех единицах измерения, в которых она была установлена в определении стиля.
posTop     Смещение верхнего края элемента в тех единицах измерения, в которых она была установлена в определении стиля.
posWidth     Ширина элемента в тех единицах измерения, в которых она была установлена в определении стиля.

Работа с объектом style

Объект style позволяет изменить стиль любого элемента Web-страницы, просто присвоив нужному свойству необходимое значение.

paragraph1.style.fontSize = 7;

Можно изменить геометрические размеры элемента:

image1.style.height = "100mm";  image1.style.width = "120mm"; 

и его месторасположение:

iamge1.style.top = "200px";  image1.style.left = "50px"; 

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

image1.style.pixelHeight = 400;  iamge1.style.pixelLeft +=5; 

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

<IMG src="/image1.gif" id="image1" style="height: 100mm; width: 100"> 
nheight = image1.style.posHeight; // Значение в миллиметрах 
nwidth = image1.style.posWidth;   // Значение в пикселах 

Вы можете использовать методы getAttribute, setAttribute и removeAttribute для получения и установки значения и удаления какого-либо свойства стиля:

paragraph1.style.setAttribute("borderBottomWidth", 5, false); 
paragraph1.style.removeAttribute("borderTopWidth", false); 

Объект style в Internet Explorer

Как же получить доступ к объекту style? Internet Explorer предоставляет для этого три свойства: style, currentStyle и runtimeStyle.

Первое свойство позволяет получить доступ к стилю, встроенному в тег элемента с помощью атрибута STYLE:

<P id="par1" style="color: green">Любой текст</P>  someColor = par1.style.color; 

Вышеприведенное выражение поместит в переменную someColor значение атрибута color встроенного стиля элемента, т.е. "green".

someFontSize = par1.style.fontSize;

Это выражение вернет null, даже если где-то в таблице стилей атрибут font-size для этого элемента определен. А все потому, что интересы свойства style не выходят за рамки встроенного ситиля.

Чтобы получить стиль элемента с учетом и встроенных стилей, и таблиц стилей, и атрибутов тега, используйте свойство currentStyle:

<FONT id="par1" style="color: green" size="7">Любой текст</FONT> 
someColor = par1.currentStyle.color; 
someBColor = par1.currentStyle.backgroundColor; 
someFontSize = par1.currentStyle.fontSize; 
someOther = par1.currentStyle.textDecoration; 

Предположим, что где-то в таблице стилей определен для этого элемента атрибут background-color, равный "teal", а text-decoration не определен вообще. Эти выражения вернут следующие значения: первое - "green", второе - "teal", третье - "largest" (или "7"), а четвертое - "none"? т.е. значение по умолчанию для этого атрибута стиля.

Если вы измените какое-либо свойство объекта style, измениться то же свойство и у объекта currentStyle, и наоборот. Единственная деталь: если вы изменили какое-либо свойство currentStyle и потом сразу же обратились к нему, вернется старое значение. То есть, между присвоением значения и его применением к элементу должно пройти некоторое время.

Свойство runtimeStyle довольно странное. Оно возвращает ссылку на объект runtimeStyle, который является примерно тем же самым, что и currentStyle, но присвоение его свойствам новых значений не затригивает аналогичных свойств style. То есть, вы можете переопределить свойства стиля runtimeStyle, и соответствующие свойства style (но не currentStyle) не изменятся.
[править] Объект styleSheet и коллекция styleSheets

Объект document в IE имеет встроенную коллекцию styleSheets, которую можно использовать для доступа к отдельным таблицам стилей документа. А отдельная таблица стилей представляется объектом styleSheet:

address = document.styleSheets[1].href;

Для нас будут полезны три свойства объекта таблицы стилей.

Первое из них - это href, представляющее интернет-адресс файла внешней таблицы стилей. Вы можете изменить этот адрес, чтобы загрузить другую таблицу стилей.

Второе - disabled, разрешающее или запрещающее Web-обозревателю применять эту таблицу для форматирования документа. Заметьте, что в данном случае false разрашает применение таблицы, а true запрещает.

И последнее свойство - type - имеет для нас только теоретический интерес: оно задает тип таблицы стилей, который для IE всегда равен "text/css".

По материалам сайта: http://www.spravkaweb.ru/



 
Подписаться на обновления по RSS

Где Вы зарабатываете больше всего?
 

UM.la — лучший Joomla-хостинг


© 2011 Как создать свой сайт. Все права защищены / - все о самостоятельном создании сайтов, продвижении и заработке в интернет.

Проверить тИЦ и PR Яндекс.Метрика