Динамическое изменение CSS
Вы можете динамически изменять имя подключаемого файла со стилевой таблицей, соответственно изменяя сам стиль. Вот функция, на языке JScript, которая при ее вызове, если уже применен какой-либо стиль, убирает его и подключает новый.
function change_style() {(document.styleSheets.href != null).styleSheets.href = "newStyle.css"; }
Если стилевая таблица определена внутри HTML-страницы, вы можете добавлять новые определения с помощью функции addRule (object, style). Где object - объект, а style, соответственно, стилевые установки. Вот пример, в котором после щелчка на кнопку, происходит изменение стилевой таблицы:
<HTML> <HEAD> <SCRIPT LANGUAGE="JScript">newRule() {.styleSheets.MyStyles.addRule("P","color:blue"); } </SCRIPT> <STYLE ID="MyStyles">{color:red}{color:red;font-style:italic} </STYLE> </HEAD> <BODY> <H1>Это Заголовок 1</H1> <H2>Это Заголовок 2</H2> <P>Это абзац. Щелкни на кнопку для изменения его стиля</P> <BUTTON onclick="newRule()">Нажми меня</BUTTON> </BODY> </HTML>
Просмотрев страничку с таким кодом, вы увидите, как происходит изменение стиля, путем добавления установки в таблицу стилей.
Языковые стандарты
Все символьные обозначения букв, цифр, специальных знаков и иероглифов на самом деле представляют собой битовые комбинации - различные сочетания битов. Так, например, из 8 битов, в различных комбинациях, теоретически может получиться 256 последовательностей, в свою очередь каждой из этих последовательностей присвоен символ, другими словами из 8 битов может получиться 256 символов. Каждому такому символу присваивается свой код и из них составляется таблица - кодировка символов. Соответственно таких таблиц может быть как минимум по одной на каждый из земных языков. На самом деле их гораздо больше, чем это нужно, все они были созданы в разное время, для различных платформ, и кодируются они не только при помощи 8 битов, но и 16 и даже 32. Самым популярным из стандартов кодирования символов, в настоящий момент является стандарт ISO 646, созданный международной организацией стандартизации ISO, а точнее его первые 128 символов, которые кодировались при помощи 8 битов, но при этом первый бит всегда равнялся нулю. Ему было присвоено имя ASCII и иногда его еще называют 7-битовым стандартом. Он используется большинством компьютерных машин для написания символов латинского алфавита, а также для синтаксиса всех языков программирования и разметки, а также для всех типов данных. Для поддержки языков, использующих в своем алфавите символы отличные от латинских, был использован восьмой бит байта, а это дало возможность добавить еще 128 дополнительных символов. Была создана серия кодировок ISO 8859, в которых первая часть - это 128 символов ASCII. Самая первая из них, ISO 8859-1, еще ее называют ISO Latin-1 или 8-битовой ASCII, содержит в себе практически все европейские нестандартные символы, а кодировка ISO 8859-5 является русской. В свою очередь, организация Unicode Consortium создала на основе 16-битового кодирования одноименную кодировку, в которую решено было вместить 65536 символов, каждый весом в два байта. Первые 256 символов Unicode в точности соответствуют ISO 8859-1, а саму кодировку компьютерное сообщество признало и использует все чаще, и если основной кодировкой в HTML раньше считалась ISO 8859-1, то с появлением HTML 4.0, основной кодировкой стала Unicode. Не желая останавливаться на достигнутом, ISO разработала новый, 32-битовый стандарт кодирования ISO 10646. Он совместим с Unicode, а также имеет несколько своих производных фоматов, одна из которых - формат UTF-8 внедрен в Windows.
Особенности работы с кодировками
Для нормального отображения символов той или иной кодировки, и сервер, и браузер должны обменяться соответствующей служебной информацией. Для этого протокол HTTP, при помощи поля Accept-Charset, позволяет браузеру послать сообщение на сервер о том, какие кодировки в нем доступны и в каком порядке очередности. При этом сервер может выбрать из вариантов документ, исполненный в требуемой кодировке, сообщить браузеру информацию о том, в какой кодировке будет прислана страница, или автоматически перекодировать ее и переслать браузеру. Если такая возможность не реализована на сервере, то присланный документ можно просмотреть в различных кодировках, выбрав их в настройках браузера вручную. Еще одним способ сообщить браузеру о стандарте кодирования может сводиться к следующему - автор документа создает служебную информацию для браузера в тэге <МЕТА>, между тэгами <HEAD> и </HEAD>, запись эквивалентную заголовку HTTP, например: <META HTTP-EQUIV="Content-Type" content="text/html; charset= windows-1251"> Встретив такую инструкцию, браузер автоматически переключается на нужную кодировку.
Русские кодировки
Кодировок, русифицирующих сеть, существует гораздо больше, чем хотелось бы, их как минимум пять: KOI-8 (созданная для UNIX), 866 (для MS DOS), Windows-1251, ISO 8859-5, MAC. Ввиду распространения такого количества русских кодировок, в русской части сети очень распространен способ, когда сервер имеет систему автоматического перекодирования документа на лету, в зависимости от того, какой ответ пришел о браузера. В итоге, часто происходит например, следующее: документ написан в KOI-8 и имеет об этом запись в тэге <МЕТА>, сервер определяет кодировку браузера Windows-1251 и автоматически перекодирует документ в нее, браузер же получив инструкцию прописанную в тэге <МЕТА> переключается в свою очередь на KOI-8 и пользователь не может прочесть текст. Выход может быть в том, чтобы вовсе не указывать charset в тэге <МЕТА>, в документах, которые будут лежать на таком сервере, либо пользователь сохраняет документ на диске и удаляет эту инструкцию из <МЕТА> вручную.
Популярное: Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас... Почему стероиды повышают давление?: Основных причин три... Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (225)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |