Вход/Регистрация
JavaScript. Подробное руководство, 6-е издание
вернуться

Флэнаган Дэвид

Шрифт:

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

<div>
с абсолютным позиционированием, то по умолчанию текст будет виден через элемент
<div>.
Если же элемент
<div>
содержит собственный текст, символы окажутся наложенными друг на друга, образуя трудную для чтения мешанину. Однако не все элементы по умолчанию прозрачны. Например, элементы форм выглядели бы нелепо с прозрачным фоном, и такие элементы, как
<button>,
имеют цвет фона по умолчанию. Переопределить значение цвета по умолчанию можно с помощью свойства
background-color
; при необходимости можно явно установить цвет фона прозрачным («transparent»).

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

opacity
, определяемого стандартом CSS3. Значением этого свойства является число в диапазоне от 0 до 1, где 1 означает 100-процентную непрозрачность (значение по умолчанию), а 0 - 100-процентную прозрачность. Свойство
opacity
поддерживается всеми текущими броузерами, кроме IE. В IE аналогичная функциональность реализуется с помощью специфичного свойства
filter
. Чтобы сделать элемент непрозрачным на 75%, можно воспользоваться следующими CSS-стилями:

opacity: .75; /* стандартный стиль прозрачности в CSS3 */

filter: alpha(opacity=75); /* прозрачность в IE; обратите внимание */

/* на отсутствие десятичной точки */

16.2.6. Частичная видимость: свойства overflow и dip

Свойство

visibility
позволяет полностью скрыть элемент документа. С помощью свойств
overflow
и
clip
можно отобразить только часть элемента. Свойство
overflow
определяет, что происходит, когда содержимое документа превышает размер, указанный для элемента (например, в свойствах стиля
width
и
height
). Далее перечислены допустимые значения этого свойства и указано их назначение:

visible

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

hidden

Содержимое, вышедшее за пределы элемента, обрезается и скрывается, так что никакая часть содержимого никогда не прорисовывается вне области, определяемой свойствами размера и позиционирования.

scroll

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

auto

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

Если свойство

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

Значение свойства

clip
задает область отсечения элемента. В CSS2 области отсечения прямоугольные, но синтаксис атрибута
clip
обеспечивает возможность в следующих версиях стандарта задавать области отсечения, отличные от прямоугольных. Синтаксис свойства
clip
:

rect(top right bottom left)

Значения

top, right, bottom
и
left
задают границы прямоугольника отсечения относительно левого верхнего угла области элемента. Чтобы, например, вывести только часть элемента в области 100 X 100 пикселов, можно задать для этого элемента следующий атрибут
style
:

style="clip: rect(0px 100рх 100рх 0рх);"

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

auto
указывает, что этот край области отсечения совпадает с соответствующим краем самого элемента. Например, можно вывести только левые 100 пикселов элемента с помощью следующего атрибута
style
:

style="clip: rect(auto 100рх auto auto);"

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

16.2.7. Пример: перекрытие полупрозрачных окон

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

  • Читать дальше
  • 1
  • ...
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: