Функция FIXED (DAX) — DAX

  • Чтение занимает 2 мин

В этой статье

Округляет число до указанного десятичного разряда и возвращает результат в виде текста.Rounds a number to the specified number of decimals and returns the result as text. Вы можете указать, будет ли возвращаемый результат содержать запятые.You can specify that the result be returned with or without commas.


FIXED(<number>, <decimals>, <no_commas>)  


numbernumberЧисло, которое требуется округлить и преобразовать в текст, или столбец, содержащий число.The number you want to round and convert to text, or a column containing a number.
decimalsdecimals(Необязательный аргумент) Количество разрядов справа от десятичного разделителя; по умолчанию 2.(optional) The number of digits to the right of the decimal point; if omitted, 2.
no_commasno_commas(Необязательный аргумент) Логическое значение: значение 1 показывает, что в возвращаемом тексте не выводятся запятые; значение 0 (по умолчанию) показывает, что в возвращаемом тексте выводятся запятые.(optional) A logical value: if 1, do not display commas in the returned text; if 0 or omitted, display commas in the returned text.

Возвращаемое значениеReturn value

Число в текстовом представлении.A number represented as text.


  • Если параметр decimals имеет отрицательное значение, number округляется слева от десятичного разделителя. If the value used for the decimals parameter is negative, number is rounded to the left of the decimal point.

  • Если параметр decimals не указан, по умолчанию ему присваивается значение 2.If you omit decimals, it is assumed to be 2.

  • Если параметр no_commas равен 0 или не указан, в возвращаемый текст включаются запятые.If no_commas is 0 or is omitted, then the returned text includes commas as usual.

  • Основное различие между форматированием ячейки с числом с использованием команды и напрямую с использованием функции FIXED заключается в том, что функция FIXED преобразует результат в текстовый вид.The major difference between formatting a cell containing a number by using a command and formatting a number directly with the FIXED function is that FIXED converts its result to text. Если используется команда из меню форматирования, число сохраняется в числовом виде.A number formatted with a command from the formatting menu is still a number.

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).This function is not supported for use in DirectQuery mode when used in calculated columns or row-level security (RLS) rules.


В следующем примере получается числовое значение из текущей строки столбца PctCost и возвращается его текстовое представление с 4 десятичными разрядами без запятых.The following example gets the numeric value for the current row in column, PctCost, and returns it as text with 4 decimal places and no commas.

= FIXED([PctCost],3,1)  

Числовые значения могут иметь не более 15 значащих цифр. Десятичные значения могут иметь размер до 127.Numbers can never have more than 15 significant digits, but decimals can be as large as 127.

См. такжеSee also

Текстовые функцииText functions
Математические и тригонометрические функцииMath and Trig functions

Tcl blue screen fix

To cast the screen please follow the steps below: Press Windows + P key. Go to Devices. Find your Device. Hope this information is useful. Thank you. Dear PaulMiosge I am also using TCL 65″ TV with same issue… Not only it fixed the blue screen of death problem, it also fixed the previous WIFI issue, so the phone is back to normal. If your LG G3 phone suffers from the blue screen of death, you can try this solution (at your own risk): 1. Open the phone case and take out the battery, SIM card, SD card, and…

How to update epg importer

The blue screen is evidence of a critical system error. As a protective measure, the computer shuts down — causing you as the user to initially just stare at In this mode, Windows only loads processes and drivers that are absolutely necessary. Among other things, this can be used for fixing existing…Feb 20, 2019 · Part 3. Five Ways to Fix a Corrupted Hard Disk or Drive. There are also some other approaches on how to repair corrupted hard disk/drive. We will introduce in order from general ways to advanced ones. #1 Try CMD to Fix Corrupted Drive. As mentioned above, the CMD Line is a built-in mechanism for deeper operations on a PC.

Android auto keeps disconnecting honda

Blue screen errors, or blue screen of death (BSOD) errors, are the most severe errors Windows can encounter. Since Windows can not recover from this So the easiest way to try and fix a blue screen error is to reinstall and update your system’s device drivers. This will ensure that all driver bugs are…Dec 12, 2015 · I have a tcl tv and the screen just stays a blackish blue color and has no sound — Answered by a verified TV Technician We use cookies to give you the best possible experience on our website. By continuing to use this site you consent to the use of cookies on your device as described in our cookie policy unless you have disabled them.

Bpst spanish

Aug 29, 2019 · A blue screen appears on the TV screen when connecting the 4K Ultra media player to the TV. My TV has lines on the screen, blurred picture, double images, or odd colors How to display or remove the Picture In Picture (PIP) window on the television screen. Solved: Got a 75s425-75” 4K Roku HDTV Four months ago and while watching tv the screen went black while sound was still playing. We unplugged and plugged back in, we used the so called factory reset (hit the home button 5 times, up arrow once,

E trade financial advisor

We’re big fans of F.lux and Chrome extension G.lux for automatically adjusting your screen brightness and temperature (so that blue light doesn’t wreck our sleep), as well as multi-monitor tools … Cellairis for Business. Businesses that stay on the go, stay on top. But seemingly minor details such as a cracked screen, the wrong mobile accessories or mounts, poor device management or unreachable support can quickly grind productivity to a halt and wreak havoc on your bottom line.

Pima county sheriff candidates 2020 chris nanos

On the next screen, scroll down and tap on More Settings option. 5. On the More Settings screen, tap on Show My caller ID. 6. On the pop-up that appears, tap on Hide Number option and then tap on Cancel to come out of the Caller ID Menu. How to fix screen / picture / display issues The following steps will help you diagnose whether your issue is a problem with the TV or the device broadcasting the picture. Step 1: Power cycle the TV.

What do scientists hope to accomplish using recombinant dna_

How to Fix Discoloration and Distortion on a Computer Screen. Correct Washed Out, Distorted, or Messed Up Colors. Are the colors «off» somehow on your computer’s screen? Maybe they’re washed out, or inverted? Perhaps everything has a red, green, or blue hue, or even just too dark or too light?TCL’s Alto Sound Bars provide stunning sound and simple setup, letting you enjoy your favorite entertainment even more. Complete your home theater now.

Prodigy toys in stores

This way you won’t get pollution in areas where the colour of the blue screen varies. i.e. use a screen cleanplate/levelled screen as reference. If there are some extreme values in the BG then it will break the key. Roll them off (film can’t hold anything above 16, so 20 is a safe bet to start a roll off). Example Composite

Fix the blue screen of death error on Windows 10 A Blue Screen of Death (BSOD) is usually hardware or software related. bluescreen #windows #fix best antivirus ruclip.com/video/5hAqQaTzeQs/видео.html all driver’s all Windows…

Naruto statues surge studio

TCL clear screen. Hi, I would like to clear screen from TCL sheel.

View Gumtree Free Online Classified Ads for samsung screen repair and more in South Africa. Attention! Microsoft Internet Explorer 11 and older will no longer be supported by Gumtree after Dec 31st, 2020.

What 2020 cars can be flat towed behind rv

Lasko oscillating fans

Homelink troubleshooting toyota

Cr seal catalog

Best modern warfare settings ps4

Apk unable to lock database resource temporarily unavailable

Shades of morton minigame teleport

Swipe from the right edge of the screen, then tap Settings. (If you’re using a mouse, point to the lower right corner of the screen, then click Settings.) Select Control Panel. Underneath Programs, select Uninstall a program. Locate and select Microsoft Silverlight. Select Uninstall. Windows 7/Vista. Quit all open browsers — including this window! You may want to print the following steps.

Welcome to the BIG SCREEN STORE We Guarantee Low Prices on all Samsung Big Screen TV’s including the Newest 4K and 8K technology. We also specialize in the integration of our TVs for all of your home networking, home office, and teleconference needs for virtual communication and working from home.

Apr 06, 2020 · TCL is best known for its TVs, but has officially launched a trio of new phones: the 10L, 10 Pro, and 10 5G. The design looks great, and the price is nice, but specs are decidedly mid-range.

If your screen is not waking up when someone calls you and you have to manually unlock your phone and open dialer app to access incoming calls, here is what you can do to fix the issue on Android Oreo, Nougat or Marshmallow running devices.

Jan 17, 2004 · sounds like some sort of video ovelay problem or lose wire, i remember when capturing from analogue video, i used to get a blue screen, by touching the video composite wire it would fliker and eventually pick up the siganl. try making sure the cables are connected securely. tell me how you get on, oh yes also try using different capture software

Realvnc cannot currently show the desktop ubuntu

Newmar dutch star 4326 floor plan

Sod equipment auction

Li pi hsieh piano sheet

Voswitch review

Alienware m15 r2 heat issues

Rn to bsn texas

Craigslist snowmobiles for sale

Sailing blogs youtube

2008 dodge ram 4500 towing capacity

Python connect to azure synapse

Spring boot resttemplate ssl truststore

15fq+ sample report

Wood putty white

Gta 5 body mods

Clear coat spray for carbon fiber

Cs354 p3 github

Discord nitro card declined

Disadvantages of critical thinking

Jeep patriot transmission filler tube

Best controller binds for non claw players

Oregon missing persons list 2020

Theravax available in mexico

Obs high pitch noise

Vintage thermometer

Sig p365xl vs glock 43x

Mbe engineering

Golf mk2 gti

Nesicaxlive roms

Ingersoll rand 2475f14g air compressor

Eutv free trial

Wiggle plot matlab

How to show calendar on iphone

position fix — Russian translation – Linguee

Put the air filter

[. ..]
frame back in its position and fix firmly with the screws.


Для этого

вставьте рамку фильтра и надежно закрепите ее винтами.


Position and fix the basic set, then position the screws and insert the pipes.


Установить скрытую часть и закрепить ее, потом вставить винты и закрутить шланги.


Lower the lift ram until stiff leg is off floor and

swing it in vertical position and fix it again, then raise […]

the lift ram.


Поднимите подъёмное устройство в промежуточное положение.


Return the lever

to the locked position and fix in holder.


Переведите рычаг снова в положение блокировки […]

и застопорите.


If your Contour+2

has obtained a Position Fix within the last two to four hours and a charged battery has remained in the camera, then the camera will typically obtain a Position Fix again within […]

a few seconds of pressing


the Status Button or sliding the Record Slider forward.

onboardvideo.com. ua

Если камера определила местоположение в течение последних 2-4 часов и батарея камеры оставалась заряженной в течение этого времени, то обычно камере потребуется несколько секунд […]

после нажатия кнопки проверки статуса


камеры или начала записи для определения текущего местоположения.


As long as the GPS receiver can


contact at least three

satellites on the GPS network, a position fix can be determined; of course […]

the system is designed so


that at least three satellites are above the horizon at any given time.


Пока приемник GPS можно


связаться по крайней мере

трех спутников на GPS-сети, положение исправить может быть определено; […]

конечно Система разработана


таким образом, чтобы по крайней мере три спутника над горизонтом в данный момент времени.


You can test this by placing the GPS module nearby an open

window until it has obtained a position fix, and then slowly move it away […]

from the window.


Вы можете проверить это, установив модуль GPS


поблизости открытого окна, пока

он не получил определения местоположения, а затем медленно переместите […]

его подальше от окна.


To position and fix the underfelt collar correctly below the window, cut underfelt collar as shown (c).


Чтобы правильно расположить и закрепить контур гидроизоляционного фартука BFX под окном, подрежьте контур, как показано на рисунке (с).


2) Turn the upper gear unit of the


on-load tap-changer heads into the

desired mounting position and fix them there (screw-tighten […]

and secure the pressure rings).


2) Повернуть верхние редукторы

головок устройства РПН в нужное положение и зафиксировать […]

(завинтить и застопорить упорные сегменты).


A 2 gas springs allow to fix a monitor in a most-comfortable working position.



позволяют зафиксировать стереомонитор в удобном для работы положении.


If you see that the market

has reversed, fix your losses and reverse the position.


Видишь, что

рынок перевернулся, зафиксируй убыток и переверни позицию.


When GPS

modules first get a fix, the position and/or altitude […]

may not be accurate, and subsequent fixes may have greater accuracy.


Когда GPS модули изначально

получают неправильные данные, то высота не может [. ..]

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


будут с еще большей погрешностью.


2B) Fix the sensor support and position the sensor at 7 to 8 millimeters from the magnet.


2b) Закрепить кронштейн датчика и установить его на расстоянии около 7/8 миллиметров от магнето.


In general, a user must know his position from three different reference points in order to fix his position.


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


Position a few of the largest hotfix gems in the centres […]

of random printed flowers – or as the pattern of your chosen material or sarong dictates.


Разместите несколько самых крупных стразов в центре […]

набивных цветов или как-либо еще в зависимости от рисунка на парео.


Choose the correct position for the fan and fix the attachment plates to the fan with M8 x 20 mm screws […]

(4 pcs.).


Выберите правильное положение вентилятора, и прикрепите крепежные пластины вентилятора винтами М8х20 [. ..]

(4 шт.) к вентилятору.


After a simple stiffness tune, a compression bending test was run at 20 Hz between 0.3 and 3 N. The test was successfully run by utilizing a lower force


Dynacell load cell, a small compression platen

and a clamp to fix the implant, and mounting block in position on the lower t-slot table.


После простой настройки жесткости проводилось испытание на сжатие и изгиб с частотой 20 Гц между 0,3 и 3 Н. Испытание успешно прошло с применением датчика нагрузки Dynacell,


рассчитанного на меньшее

усилие, маленькой пластины для сжатия, зажима для фиксации имплантанта и монтажного […]

блока, закрепленного


на столе с t-образным профилем.


The President suggested putting the message in CIGR Newsletter that the CIGR is going to seek candidates for the SG and wants to fix the position in 2012 meeting in Valencia.


Президент предложил поместить сообщение в Информационном бюллетене СИГР, что СИГР собирается подыскивать кандидатов в Генеральный секретариат и хотел бы решить этот вопрос на заседании в Валенсии в 2012 г. Было предложение со стороны Исполнительного совета, что кандидатом на штаб-квартиру Генерального секретариата мог бы стать Китай.


Place thrust actuator (pos. 50) with distance columns onto valve and fix into position with two self-locking hexagon nuts (pos. 50.25).


Установите привод (50) вместе с опорами на арматуру и закрепите двумя самостопорящимися шестигранными гайками (№ 50.25).


Locking the braking

unit allows to fix its position in proximity […]

of the various work areas.


Блокировка тормозного узла позволяет позволяет

зафиксировать пылесос в нужном положении в различных […]

рабочих зонах.


When the signal cannot be

improved anymore, fix the dish on this position and press the […]

bluE button for Scan.


При достижении максимального

значения, зафиксируйте антенну в этом положении и нажмите Синюю […]

кнопку для сканирования.


Wireless tap detector is a machine

designed to detect and fix the position of the hidden wireless […]

tapping device.


Детектор беспроводных ТКП является машина,

предназначенная для обнаружить и исправить положение устройства […]

скрытые беспроводные разговоров.


It is essential to fix the matrix in position in the universal […]

housing using the torque key with a torque of 4 Ncm to prevent

[. ..]

loosening or over tightening of the matrix.


Очень важно, исправление положения матрицы в универсальном […]

корпусе необходимо выполнять при помощи ключа с крутящим моментом


4 Нсм, чтобы предотвратить ослабление или пережим матрицы.


It must fix a position and decide on the content of its contribution to the next […]

Global Forum.


Он должен занять какуюо позицию и решить, каким в содержательном отношении […]

должен быть его вклад в следующий глобальный форум.


The  Duo – hardness zone slider  SCH 3.1 and SCH 3.2 not only clamp the two multiple contact


strips with its clamping

mechanism, but also fix  the slider in the desired position  preventing unintentional […]



Благодаря зажимному механизму двойные регуляторы зоны жесткости SCH 3.1 и SCH 3.2 позволяют


не только арретировать две

пружинные рейки, но и фиксируют регуляторы в нужной позиции, препятствуя, […]

тем самым, их самопроизвольному сдвигу.


The parties to the action met in court in March 2007 to fix a hearing date, but the Court postponed the setting of a date until 29 June 2007 so that certain steps could be taken to facilitate the proceedings, given that several parties are involved and the proceedings will be lengthy.


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


At its fourth session, the Advisory Committee endorsed the draft declaration on human rights education and training prepared by its


drafting group consisting of Mr. Decaux

(Rapporteur), Mr. Fix Fierro, Mr. Kartashkin, […]

Ms. Quisumbing and Ms. Warzazi (Chairperson),


and transmitted it to the Human Rights Council (A/HRC/13/41).


На своей четвертой сессии Консультативный комитет одобрил проект декларации об образовании и подготовке в области прав человека,


подготовленный его редакционной группой

в составе г-на Деко (докладчик), г-на […]

Фикса Фьерро, г-на Карташкина, г-жи Кисумбинг


и г-жи Варзази (председатель), и представил его Совету по правам человека (A/HRC/13/41).


A new field audit reporting format was introduced and various enhancements were made during the year to finally fix on a format that will be applied for all field office audit reports in 2002.


В течение нынешнего года была выбрана новая


форма отчета об аудиторской проверке на

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


Subject to article 7.4 of the statute of the Appeals Tribunal, the President may fix one non-renewable time limit not exceeding five days for the resubmission of the written pleadings if the initial period for the submission of such pleadings has expired.


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


Контекст наложения — CSS: каскадные таблицы стилей

Контекст наложения представляет собой трехмерную концептуализацию элементов HTML вдоль воображаемой оси z относительно пользователя, который, как предполагается, обращен к окну просмотра или веб-странице. Элементы HTML занимают это пространство в порядке приоритета на основе атрибутов элемента.

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

Контекст наложения формируется в любом месте документа любым элементом в следующих сценариях:

  • Корневой элемент документа ( ).
  • Элемент с позицией значение абсолютное или относительное и z-index значение, отличное от auto .
  • Элемент с позицией значение фиксированное или липкое (липкое для всех мобильных браузеров, но не для старых компьютеров).
  • Элемент, являющийся дочерним элементом гибкого контейнера, со значением z-index , отличным от auto .
  • Элемент, который является дочерним элементом контейнера grid , со значением z-index , отличным от auto .
  • Элемент с непрозрачностью Значение меньше 1 (непрозрачность см. В спецификации).
  • Элемент со значением смешанного режима смешивания , отличным от нормального .
  • Элемент с любым из следующих свойств со значением, отличным от , нет :
  • Элемент с изоляцией значение изоляция .
  • Элемент со значением -webkit-overflow-scrolling touch .
  • Элемент

  • со значением изменит значение , указав любое свойство, которое будет создавать контекст стекирования для не начального значения (см. Этот пост).
  • Элемент

  • с содержит значение из layout , или paint , или составное значение, которое включает любой из них (т. Е. содержит: strict , contains: content ).

В контексте наложения дочерние элементы складываются в соответствии с теми же правилами, которые объяснялись ранее.Важно отметить, что значения z-index его дочерних контекстов стекирования имеют значение только в этом родительском элементе. Контексты стекирования обрабатываются атомарно как единое целое в родительском контексте стекирования.


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

Примечание: Иерархия контекстов наложения является подмножеством иерархии элементов HTML, поскольку только определенные элементы создают контексты наложения. Мы можем сказать, что элементы, которые не создают свои собственные контексты наложения, ассимилируются родительским контекстом наложения.

В этом примере каждый позиционированный элемент создает свой собственный контекст наложения из-за своего позиционирования и значений z-index .Иерархия контекстов наложения организована следующим образом:

Важно отметить, что DIV # 4, DIV # 5 и DIV # 6 являются потомками DIV # 3, поэтому наложение этих элементов полностью разрешается в DIV # 3. После завершения наложения и рендеринга в DIV # 3 весь элемент DIV # 3 передается для укладки в корневой элемент по отношению к DIV его родного брата.


  • DIV # 4 отображается под DIV # 1, потому что z-index (5) DIV # 1 действителен в контексте наложения корневого элемента, а z-index (6) DIV # 4 действителен в контексте наложения DIV №3.Итак, DIV # 4 находится под DIV # 1, потому что DIV # 4 принадлежит DIV # 3, у которого более низкое значение z-index.
  • По той же причине DIV # 2 (z-index 2) отображается под DIV # 5 (z-index 1), потому что DIV # 5 принадлежит DIV # 3, у которого более высокое значение z-index.
  • Z-index

  • DIV # 3 равен 4, но это значение не зависит от z-индекса DIV # 4, DIV # 5 и DIV # 6, потому что оно принадлежит другому контексту стекирования.
  • Простой способ определить порядок рендеринга составных элементов по оси Z — это представить его как своего рода «номер версии», где дочерние элементы — это второстепенные номера версий под номерами основных версий их родителей.Таким образом, мы можем легко увидеть, как элемент с z-index равным 1 (DIV # 5) размещается над элементом с z-index, равным 2 (DIV # 2), и как элемент с z-index равным 6 (DIV # 4) укладывается под элементом с z-индексом 5 (DIV # 1). В нашем примере (отсортированном в соответствии с окончательным порядком рендеринга):
    • Корень
      • DIV # 2 — z-index равен 2
      • DIV # 3 — z-index равен 4
        • DIV # 5 — z-index равен 1, укладывается под элементом с z-index 4, что приводит к порядку рендеринга 4. 1
        • DIV # 6 — z-index равен 3, сложен под элементом с z-index 4, что приводит к порядку рендеринга 4,3
        • DIV # 4 — z-index равен 6, сложен под элементом с z-index 4, что приводит к порядку рендеринга 4,6
      • DIV # 1 — z-index 5



Элемент подразделения №1

позиция: относительная;
z-index: 5;

Элемент разделения №2

позиция: относительная;
z-index: 2;

Элемент подразделения №4

позиция: относительная;
z-index: 6;

Элемент деления №3

позиция: абсолютная;
z-index: 4;

Элемент деления №5

позиция: относительная;
z-index: 1;

Элемент деления №6

позиция: абсолютная;
z-index: 3;


  * {
  маржа: 0;
html {
  отступ: 20 пикселей;
  шрифт: 12px / 20px Arial, без засечек;
div {
  непрозрачность: 0.7;
  положение: относительное;
h2 {
  шрифт: наследовать;
  font-weight: жирный;
# div1,
# div2 {
  граница: 1px пунктирная # 696;
  отступ: 10 пикселей;
  цвет фона: #cfc;
# div1 {
  z-индекс: 5;
  нижнее поле: 190 пикселей;
# div2 {
  z-индекс: 2;
# div3 {
  z-индекс: 4;
  непрозрачность: 1;
  позиция: абсолютная;
  верх: 40 пикселей;
  слева: 180 пикселей;
  ширина: 330 пикселей;
  граница: 1px пунктирная # 900;
  цвет фона: #fdd;
  отступ: 40 пикселей 20 пикселей 20 пикселей;
# div4,
# div5 {
  граница: 1px пунктирная # 996;
  цвет фона: #ffc;
# div4 {
  z-индекс: 6;
  нижнее поле: 15 пикселей;
  отступ: 25px 10px 5px;
# div5 {
  z-индекс: 1;
  маржа сверху: 15 пикселей;
  отступ: 5 пикселей 10 пикселей;
# div6 {
  z-индекс: 3;
  позиция: абсолютная;
  верх: 20 пикселей;
  слева: 180 пикселей;
  ширина: 150 пикселей;
  высота: 125 пикселей;
  граница: 1px пунктирная # 009;
  padding-top: 125 пикселей;
  цвет фона: #ddf;
  выравнивание текста: центр;


Информация об исходном документе


и содержащий блок — CSS: каскадные таблицы стилей

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

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

  1. Область содержимого
  2. Область набивки
  3. Пограничный район
  4. Маржа

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

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

На размер и положение элемента часто влияет его содержащий блок. Значения в процентах, которые применяются к свойствам ширины , высоты , отступов , полей и смещения абсолютно позиционированного элемента (т.e., у которого его позиция установлена ​​на абсолютное или фиксированное ) вычисляются из содержащего блок элемента.

Процесс идентификации содержащего блока полностью зависит от значения свойства position элемента:

  1. Если свойство position равно static , relative , or sticky , содержащий блок формируется краем поля содержимого ближайшего элемента-предка, который является либо контейнер блока (такой как встроенный блок, блок или элемент списка) или устанавливает контекст форматирования (например, контейнер таблицы, контейнер гибкости, контейнер сетки или сам контейнер блока).
  2. Если свойство position равно absolute , содержащий блок формируется краем поля заполнения ближайшего элемента-предка, который имеет позицию , значение , отличное от static ( фиксированное , абсолютное , относительное или липкое ).
  3. Если свойство position равно fixed , содержащий блок устанавливается окном просмотра (в случае непрерывного носителя) или областью страницы (в случае постраничного носителя).
  4. Если свойство position равно absolute или fixed , содержащий блок также может быть сформирован краем поля заполнения ближайшего элемента-предка, который имеет следующее:
    1. Преобразование или перспектива значение, отличное от нет
    2. изменит значение преобразование или перспектива
    3. Фильтр , значение , отличное от нет или изменит значение из , фильтр (работает только в Firefox).
    4. A содержит значение краска (например, содержит: краска; )

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

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


  1. Свойства height , top и bottom вычисляют процентные значения от высоты содержащего блока.
  2. Свойства width , left , right , padding и margin вычисляют процентные значения из ширины содержащего блока.

HTML-код для всех наших примеров:


Это абзац!

В каждом приведенном ниже примере изменяется только CSS.

Пример 1

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

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

  кузов {
  фон: бежевый;

раздел {
  дисплей: блок;
  ширина: 400 пикселей;
  высота: 160 пикселей;
  фон: светло-серый;

п {
  ширина: 50%;
  высота: 25%;
  маржа: 5%;
  набивка: 5%;
  фон: голубой;

Пример 2

В этом примере блоком, содержащим абзац, является элемент , потому что

не является контейнером блока (из-за display: inline ) и не устанавливает контекст форматирования .

  кузов {
  фон: бежевый;

раздел {
  дисплей: встроенный;
  фон: светло-серый;

п {
  ширина: 50%;
  высота: 200 пикселей;
  фон: голубой;

Пример 3

В этом примере блок, содержащий абзац, —

, потому что позиция последнего равна абсолютному . На процентные значения абзаца влияет padding его содержащего блока, хотя, если бы значение box-sizing содержащего блока было border-box , этого не было бы.

  кузов {
  фон: бежевый;

раздел {
  позиция: абсолютная;
  слева: 30 пикселей;
  верх: 30 пикселей;
  ширина: 400 пикселей;
  высота: 160 пикселей;
  отступ: 30 пикселей 20 пикселей;
  фон: светло-серый;

п {
  позиция: абсолютная;
  ширина: 50%;
  высота: 25%;
  маржа: 5%;
  набивка: 5%;
  фон: голубой;

Пример 4

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

  кузов {
  фон: бежевый;

раздел {
  ширина: 400 пикселей;
  высота: 480 пикселей;
  маржа: 30 пикселей;
  отступ: 15 пикселей;
  фон: светло-серый;

п {
  положение: фиксированное;
  ширина: 50%;
  высота: 50%;
  маржа: 5%;
  набивка: 5%;
  фон: голубой;

Пример 5

В этом примере позиция абзаца равна абсолютному , поэтому его содержащий блок равен

, который является ближайшим предком со свойством transform , отличным от none .

  кузов {
  фон: бежевый;

раздел {
  преобразовать: повернуть (0deg);
  ширина: 400 пикселей;
  высота: 160 пикселей;
  фон: светло-серый;

п {
  позиция: абсолютная;
  слева: 80 пикселей;
  верх: 30 пикселей;
  ширина: 50%;
  высота: 25%;
  маржа: 5%;
  набивка: 5%;
  фон: голубой;
  • Ключевые концепции CSS:
    Синтаксис CSS,
    по правилу
    специфичность и
    режимы компоновки и
    модели визуального форматирования,
    и падение маржи,
    или начальный,
    и фактические значения.Определения синтаксиса значений,
    сокращенные свойства
    и заменил элементы.
  • Свойство all сбрасывает все объявления CSS в заданное известное состояние

позиция | CSS-уловки

Свойство position может помочь вам управлять расположением элемента, например:

  .element {
  положение: относительное;
  верх: 20 пикселей;

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

relative — только одно из шести значений для свойства position . Вот остальные:


  • static : каждый элемент по умолчанию имеет статическое положение, поэтому элемент будет придерживаться обычного потока страниц. Таким образом, если установлен левый / правый / верхний / нижний / z-индекс, то это не повлияет на этот элемент.
  • относительный : исходное положение элемента остается в потоке документа, как и статическое значение . Но теперь left / right / top / bottom / z-index будут работать. Позиционные свойства «подталкивают» элемент из исходного положения в этом направлении.
  • absolute : элемент удаляется из потока документа, а другие элементы будут вести себя так, как будто его даже нет, в то время как все остальные позиционные свойства будут работать с ним.
  • исправлено : элемент удаляется из потока документа, как абсолютно позиционированные элементы.Фактически, они ведут себя почти одинаково, только элементы с фиксированным позиционированием всегда относятся к документу, а не к конкретному родительскому элементу, и на них не влияет прокрутка.
  • липкий (экспериментальный): элемент обрабатывается как относительное значение до тех пор, пока положение прокрутки области просмотра не достигнет заданного порога, после чего элемент займет фиксированную позицию , где ему будет приказано закрепиться.
  • ,

  • , наследует : позиция . Значение не каскадно, поэтому его можно использовать специально для принудительного выполнения, а наследует значение позиционирования от своего родителя.


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

  .element {
  позиция: абсолютная;

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

  . element {
  позиция: абсолютная;
  слева: 0;
  справа: 0;
  внизу: 0;

Чтобы дочерний элемент располагался абсолютно относительно своего родительского элемента, нам нужно установить это на самом родительском элементе:

 .parent {
  положение: относительное;

Теперь такие свойства, как left , right , bottom и top , будут ссылаться на родительский элемент, поэтому, если мы сделаем дочерний элемент прозрачным, мы сможем увидеть, что он сидит прямо внизу родительского:


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

Настольный ПК
Chrome Firefox IE Edge Safari
4 2 7 1255



Android Chrome Android Firefox Android iOS Safari
89 86 3 8


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

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

Возьмем следующий пример:

  .element {
  положение: липкое; верх: 50 пикселей;

Элемент будет позиционироваться относительно друг друга до тех пор, пока положение прокрутки области просмотра не достигнет точки, в которой элемент будет находиться на расстоянии 50 пикселей от верха области просмотра. В этот момент элемент становится липким и остается в фиксированной позиции 50px вверху экрана.

Следующая демонстрация иллюстрирует эту точку, где для верхней навигации по умолчанию установлено относительного позиционирования , а для второй навигации установлено значение , липкое в самом верху области просмотра.Обратите внимание, что на момент написания демоверсия будет работать только в Chrome, Safari и Opera.

Настольный компьютер
Chrome Firefox IE Edge Safari
92 59 Нет 89609 Мобильный

Android Chrome Android Firefox Android iOS Safari
89 86 89 8 *

Дополнительная информация

# 110: Краткий обзор значений позиции CSS

Абсолютное позиционирование внутри относительного позиционирования

Абсолютное, относительное, фиксированное позиционирование: чем они отличаются?

Создание скользящих эффектов с помощью липкого позиционирования

Работа с переполнением и положением: липкое;

Представляемся с позицией: липкая;

Как использовать CSS-сетку для закрепления верхних и нижних колонтитулов

Липкий нижний колонтитул, пять способов

Размещение прикрепленных заголовков и заголовков таблиц

положение: липкое;

Подробнее Позиция нравится: хитрый;

Что делать, если не было position: static ;?

Абсолютное, относительное, фиксированное позиционирование: чем они отличаются?

Давайте поговорим о свойстве position . Я знаю, что новичкам это интересно. Вот вопрос, который я получил недавно:

Я новичок в веб-дизайне и не усвоил различия в расположении элементов. Я знаю, что есть абсолютных , фиксированных и относительных . Есть ли другие? Кроме того, сильно ли они различаются? И когда вы должны использовать что?

Краткий ответ

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

Длинный ответ

Прежде всего важно понять, что каждый отдельный элемент на веб-странице является блоком. Буквально прямоугольник из пикселей. Это легко понять, установив для элемента значение display: block; , или если этот элемент по умолчанию является блочным, например

. Это означает, что вы можете установить ширину и высоту , и этот элемент будет учитывать это.Но элементы отображают: inline; , как и по умолчанию, — это также прямоугольники , они просто перетекают на страницу по-разному, выстраиваясь по горизонтали, насколько это возможно.

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

  .el {
  положение: статическое;
  положение: относительное;
  позиция: абсолютная;
  положение: фиксированное;
  положение: липкое;
  положение: наследовать;


Это по умолчанию для каждого отдельного элемента страницы. У разных элементов не разные значения по умолчанию для позиционирования, все они начинаются как static . Статика ничего не значит; это просто означает, что элемент перетекает на страницу, как обычно. Единственная причина, по которой вы когда-либо устанавливали элемент в позицию : static; — это принудительное удаление некоторого позиционирования, которое было применено к элементу, находящемуся вне вашего контроля. Это довольно редко, поскольку позиционирование не происходит каскадом.


Этот тип позиционирования, вероятно, наиболее сбивает с толку и используется неправильно.На самом деле это означает «относительно себя». Если вы установите position: relative; на элементе, но никаких других атрибутов позиционирования ( верхний , левый , нижний или правый ), это не повлияет на его позиционирование вообще, это будет точно так, как если бы вы его оставили как позиция: статическая; Но если вы сделаете , дайте ему другой атрибут позиционирования, скажем, top: 10px; , он сместит свое положение на 10 пикселей вниз на от того места, где было бы , как обычно, .Я уверен, вы можете себе представить, возможность перемещать элемент в зависимости от его обычного положения очень полезна. Я часто использую это, чтобы выстраивать элементы формы, которые не хотят выстраиваться так, как я хочу.

Есть еще две вещи, которые происходят при установке position: relative; на элементе, о котором вам следует знать. Во-первых, он вводит возможность использовать z-index для этого элемента, что не работает со статически позиционированными элементами.Даже если вы не установите значение z-index , этот элемент теперь будет отображаться на поверх любого другого статически позиционированного элемента. Вы не можете бороться с этим, установив более высокое значение z-index для статически позиционированного элемента.

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


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

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


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

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


Липкое позиционирование действительно уникально! Липкий элемент будет просто сидеть там как статический элемент, но когда вы прокручиваете после , если у его родительского элемента есть место (обычно: дополнительная высота), липкий элемент будет вести себя так, как если бы он фиксировал до этого родительского элемента вне комнаты. Это звучит странно в таких словах, но на демонстрации легко увидеть, что происходит.

Связанные концепции

Модель визуального форматирования

Модель визуального форматирования

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

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

Свойства, определенные в этой и следующей главах, применяются к обоим
непрерывные СМИ и
страничные СМИ.
Тем не менее
значение маржи
Свойства различаются при применении к страничным носителям (подробности см. в модели страницы).

Модель визуального форматирования не определяет все аспекты
форматирование (например, в нем не указан алгоритм межбуквенного интервала).Соответствующие пользовательские агенты могут вести себя
иначе для тех проблем форматирования, которые не рассматриваются в этом
Технические характеристики.

9.1.1 Область просмотра

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

Когда область просмотра меньше, чем область холста, на котором
документ отображается, пользовательский агент должен предлагать прокрутку
механизм. Есть самое большее
одно окно просмотра на холст, но пользователь
агенты могут отображать более одного холста (т. е. предоставлять разные
просмотры того же документа).

Содержащие блоки

В CSS 2.1 многие положения и размеры блоков рассчитываются с учетом
к краям
прямоугольной коробки под названием , содержащей блок . В
в общем, сгенерированные блоки действуют как содержащие блоки для потомков
коробки; мы говорим, что бокс «устанавливает» содержащий его блок
потомки. Фраза «блок, содержащий блок» означает «
содержащий блок, в котором находится «ящик», а не тот, который он генерирует.

Каждой коробке дается позиция относительно содержащего ее блока,
но он не ограничен этим содержащим блоком; он может переполниться.

Подробная информация о
как рассчитываются размеры содержащего блока, описано в
следующая глава.

В следующих разделах описаны типы ящиков, которые могут быть
сгенерирован в CSS 2.1. Тип блока частично влияет на его поведение в
модель визуального форматирования. Свойство display, описанное ниже,
указывает тип коробки.

9.2.1 Элементы уровня блока и блоки блоков

Элементы уровня блока — это те элементы исходного документа, которые визуально отформатированы как
блоки (например, абзацы). Следующие значения свойства display делают элемент
уровень блока: «блок», «элемент списка» и «таблица».

— это боксы, которые участвуют в
контекст форматирования блока. Каждый
элемент уровня блока генерирует основных элемента уровня блока
, которое содержит дочерние блоки и сгенерировано
контент, а также ящик, участвующий в любой схеме позиционирования.Некоторые элементы блочного уровня могут дополнительно генерировать дополнительные блоки.
основное поле: элементы ‘list-item’. Эти дополнительные коробки
размещены по отношению к основному ящику.

За исключением ящиков стола, которые описаны в следующей главе, и
замененные элементы, блок уровня блока также является блоком контейнера блока.
контейнерный ящик
содержит только блоки уровня блока или устанавливает встроенное форматирование
context и, следовательно, содержит только блоки встроенного уровня. Не весь блок
Контейнерные боксы — это блоки на уровне блоков: незамещенные встроенные блоки
и незамещенные ячейки таблицы являются блочными контейнерами, но не уровнями блоков
коробки.Блоки уровня блока, которые также являются блок-контейнерами,
называется блок

Три термина «блок уровня блока», «блок контейнера блока» и
«блок-бокс» иногда сокращается до «блок», если это недвусмысленно. Анонимные блоки блоков

В таком документе:

Какой-то текст

Еще текст

(и предполагая, что у DIV и P есть ‘display: block’),
DIV, похоже, имеет как встроенный контент, так и контент блока.Сделать это
проще определить форматирование, мы предполагаем, что есть блок анонимного блока
вокруг «Какой-то текст».


Диаграмма, показывающая
три ящика, один из которых анонимный, для примера выше.

Другими словами: если блок контейнера блока (например, сгенерированный
для DIV выше) имеет внутри блок уровня блока (например, P
выше), затем мы заставляем его иметь только блоков уровня блока
внутри него.

Если встроенный блок содержит блок на уровне входящего потока, встроенный блок
(и его встроенные предки в том же строчном поле) разбиты вокруг
блок уровня блока (и все братья и сестры уровня блока, которые являются последовательными
или разделены только сворачиваемыми пробелами и / или вне потока
элементов), разделив встроенный блок на два блока (даже если
сторона пуста), по одному с каждой стороны блока (ов) уровня блока.Линия
коробки до перерыва и после
break заключены в анонимные блоки блоков, а блок уровня блока
становится братом этих анонимных ящиков. Когда такой встроенный блок
зависит от относительного позиционирования, любой результирующий перевод также
влияет на блок уровня блока, содержащийся во встроенном блоке.


Эта модель применима в следующем примере, если следующие

p {display: inline}
диапазон {дисплей: блок}

были использованы с этим HTML-документом:


 Анонимный текст прерван блоком 


Это анонимный текст перед SPAN. Это содержание SPAN. Это анонимный текст после SPAN.

Элемент P содержит фрагмент (C1) анонимного текста, за которым следует
элементом уровня блока, за которым следует другой фрагмент (C2) анонимного
текст. Получающиеся коробки будут блоком, представляющим ТЕЛО,
содержащий анонимный блок-блок вокруг C1, блок-блок SPAN и
еще один анонимный блок-бокс вокруг C2.

Свойства анонимных ящиков унаследованы от
включающий неанонимный блок (например, в примере чуть ниже заголовка подраздела «Анонимные блоки блоков», тот для DIV).
Неунаследованные свойства имеют свое начальное значение. Например,
шрифт анонимного блока унаследован от DIV, но
поля будут равны 0.

Свойства, установленные для элементов, которые вызывают анонимные блоки блоков
сгенерированные по-прежнему применяются к блокам и содержимому этого элемента. За
Например, если граница была установлена ​​на элементе P в приведенном выше
Например, граница будет нарисована вокруг C1 (открыта в конце
line) и C2 (открываются в начале строки).

Некоторые пользовательские агенты реализовали границы встроенных строк, содержащих
блоков другими способами, например, путем помещения таких вложенных блоков внутрь
«анонимные линейные блоки» и, таким образом, рисуя строчные границы вокруг таких
коробки. Поскольку CSS1 и CSS2 не определяют это поведение, CSS1-only и
Пользовательские агенты, поддерживающие только CSS2, могут реализовать эту альтернативную модель и по-прежнему
заявить о соответствии этой части CSS 2.1. Это не относится к UA.
разработан после того, как эта спецификация была выпущена.

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

9.2.2 Встроенные элементы и встроенные блоки

Встроенный уровень
— это те элементы исходного документа, которые
не формировать новые блоки контента; контент распределен по строкам
(например, выделенные фрагменты текста
внутри абзаца, встроенные изображения,
и Т. Д.). Следующие значения свойства display делают элемент
встроенный уровень: inline, inline-table и inline-block.

Элементы встроенного уровня генерируют встроенного уровня
, которые представляют собой боксы, участвующие во встроенном
контекст форматирования.

является одновременно встроенным и чей
содержимое участвует в содержащем его встроенном контексте форматирования. А
незамещенный элемент со значением ‘display’, равным ‘inline’, генерирует
встроенный ящик.
Блоки встроенного уровня, которые не являются встроенными блоками (например, замененные
элементы встроенного уровня, элементы встроенного блока и встроенные таблицы
элементы) называются атомарными блоками строкового уровня , потому что
они участвуют в своем встроенном контексте форматирования как один непрозрачный
коробка. Анонимные встроенные блоки

Любой текст, который непосредственно содержится внутри элемента контейнера блока (не
внутри встроенного элемента) должен рассматриваться как анонимный встроенный

В документе с такой разметкой HTML:


Некоторый выделенный текст

генерирует блок-бокс с несколькими встроенными блоками внутри
Это. Поле для «подчеркнутого» — это встроенный блок, созданный встроенным
элемент ( ), но другие блоки («Некоторые» и «текст») являются встроенными блоками, генерируемыми элементом уровня блока (

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

Такие анонимные встроенные блоки наследуют наследуемые свойства от
их родительский блок блока. У ненаследуемых свойств есть начальные
ценить. В этом примере цвет анонимных встроенных полей:
унаследован от P, но фон прозрачный.

Содержимое пустого пространства, которое впоследствии будет свернуто в соответствии со свойством ‘white-space’, не создает никаких анонимных встроенных блоков.

Если из контекста ясно, какой тип анонимного ящика
означает, что анонимные встроенные блоки и анонимные блоки блоков
в этой спецификации просто называются анонимными блоками.

Есть еще типы анонимных ящиков, которые возникают при форматировании

9.2.3 Боксы для обкатки

[Этот раздел существует таким образом, что номера разделов такие же, как в
предыдущие черновики. ‘Отображать:
run-in ‘теперь определен в CSS уровня 3 (см. базовую блочную модель CSS).]

9.2.4 Свойство display

Значение: встроенный | блок | элемент списка | встроенный блок |
стол | встроенный стол | таблица-строка-группа | таблица-заголовок-группа |
стол-нижний колонтитул | стол-ряд | таблица-столбец-группа | таблица-столбец |
таблица-ячейка | заголовок таблицы | нет | наследовать
Начальный: встроенный
Применимо к: всем элементам
Унаследовано: нет
В процентах: Н / Д
Медиа: все
Расчетное значение: см. Текст

Значения этого свойства имеют следующие значения:

Это значение заставляет элемент генерировать блок-бокс.
рядный блок
Это значение заставляет элемент генерировать блок встроенного уровня.
Внутренняя часть встроенного блока форматируется как блок-блок, а
сам элемент отформатирован как атомарный блок встроенного уровня.
Это значение заставляет элемент генерировать один или несколько встроенных блоков.
пункт списка
Это значение заставляет элемент (например, LI в HTML) генерировать
блок основного блока и блок маркера.Для получения информации о
списки и примеры форматирования списков см. в разделе
value приводит к тому, что элемент не отображается в структуре форматирования (т. е.
в визуальных средах элемент не создает рамок и не влияет на
макет). Дочерние элементы также не создают ящиков; в
элемент и его содержимое удаляются из структуры форматирования
полностью. Это поведение не может быть отменено
установка свойства ‘display’
по потомкам.

Обратите внимание, что отображение «none» не создает невидимого
коробка; он вообще не создает коробки. CSS включает механизмы, которые позволяют
элемент для создания блоков в структуре форматирования, влияющих на
форматирование но сами не видны. Пожалуйста, обратитесь к разделу
о видимости для подробностей.

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

Вычисленное значение такое же, как указанное значение, за исключением
позиционированные и плавающие элементы (см. Взаимосвязь между ‘display’, ‘position’ и
‘float’) и для корневого элемента.

Для корневого элемента вычисленное значение изменяется, как описано в
раздел о взаимосвязях между ‘display’, ‘position’ и ‘float’.

Обратите внимание, что хотя начальный
значение ‘display’ равно
‘inline’, правила в таблице стилей по умолчанию пользовательского агента могут переопределить это значение.См. Образец таблицы стилей для HTML 4 в


Вот несколько примеров свойства display:

p {display: block}
em {display: inline}
li {display: list-item}
img {display: none} / * Не отображать изображения * /

В CSS 2.1 блок может быть размещен в соответствии с тремя позициями

  1. Нормальный расход. В CSS 2.1 нормально
    поток включает форматирование блока
    блочных боксов,
    встроенное форматирование
    боксов встроенного уровня и относительное позиционирование
    блоки уровня блока и встроенного уровня.
  2. Поплавки. В поплавковой модели
    ящик сначала выкладывается по нормальному потоку, потом
    вынут из потока и сдвинут
    как можно дальше влево или вправо. Контент может
    течь вдоль поплавка.
  3. Абсолютное позиционирование.
    В модели абсолютного позиционирования блок удаляется из
    нормальный поток полностью (это не влияет на более поздних братьев и сестер)
    и присвоил позицию относительно содержащего блока.

Элемент называется из
, если он плавающий, абсолютно позиционированный или
корневой элемент.Элемент называется входящим потоком , если он не является выходящим из потока. В
поток элемента
A — это комплект, состоящий из A и всех впускных
элементы, ближайший предок которых вне потока — A .

Схемы позиционирования CSS 2.1 помогают авторам создавать свои документы.
более доступным, позволяя им избегать уловок с разметкой
(например, невидимые изображения), используемые для эффектов макета.

9.3.1 Выбор схемы позиционирования: свойство ‘position’

Свойства ‘position’ и ‘float’ определяют, какие
CSS 2.1 алгоритм позиционирования используется для расчета
положение коробки.

Значение: статическое | родственник | абсолютный | фиксированный | наследовать
Начальный: статический
Применимо к: всем элементам
Унаследовано: нет
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

Значения этого свойства имеют следующие значения:

Коробка нормальная коробка, выложенная по нормальному потоку.В
и влево’
свойства не применяются.
Положение ящика рассчитывается в соответствии с нормальным потоком (это называется положением в
нормальный расход). Затем коробка смещается относительно своего нормального положения. Когда
блок B расположен относительно, положение следующего блока
рассчитывается так, как если бы B не был компенсирован Влияние ‘position: relative’ на элементы table-row-group, table-header-group, table-footer-group, table-row, table-column-group, table-column, table-cell и table-caption. не определено.
Положение коробки (и, возможно, размер) уточняется.
с «верхом»,
«дно» и
Эти свойства определяют смещения по отношению к боксу.
содержащий блок. Абсолютно
расположенные коробки выводятся из нормального потока. Это означает
они не влияют на расположение более поздних братьев и сестер. Также,
хотя абсолютно позиционируется
коробки имеют поля, они
не рухнуть
с любыми другими полями.
Положение ящика рассчитывается по «абсолютному»
модель, но кроме того, коробка закреплена относительно некоторой ссылки.Как и в случае с «абсолютной» моделью, поля блока не сжимаются с другими полями.
В случае портативных, проекционных, экранных, tty и телевизионных типов носителей:
бокс зафиксирован относительно области просмотра
и не двигается, когда
прокручивается. В случае типа носителя для печати поле отображается на каждой странице и фиксируется относительно поля страницы, даже если страница просматривается через область просмотра.
(например, в случае предварительного просмотра). Для других СМИ
типы, представление не определено.Авторы могут пожелать указать «исправлено» в
медиа-зависимый способ. Например, автор может захотеть, чтобы коробка оставалась
вверху области просмотра на экране, но
не вверху каждой распечатанной страницы. Две спецификации могут быть
разделены с помощью @media
правило, например:

Пример (ы):

@media screen {
  h2 # first {position: fixed}
@media print {
  h2 # first {position: static}

UA не должны разбивать на страницы содержимое фиксированных ящиков. Обратите внимание, что UA могут печатать невидимый контент в других
способами.См. «Контент за пределами
страничный бокс »в главе 13.

Пользовательские агенты могут рассматривать положение корневого элемента как «статическое».

9.3.2 Смещения прямоугольника: «вверху», «вправо», «внизу», «влево»

Элемент считается позиционированным
если его свойство ‘position’ имеет
значение, отличное от static. Позиционированные элементы генерируют
расположенные коробки, расположенные в соответствии с четырьмя свойствами:

Значение: <длина> | <процент> | авто | наследовать
Начальный: авто
Применимо к: позиционируемым элементам
Унаследовано: нет
Проценты: относятся к высоте содержащего блока
Медиа: визуальный
Вычисленное значение: , если
указанная как длина, соответствующая абсолютная длина; если
указанное в процентах указанное значение; в противном случае — «авто».

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

Значение: <длина> | <процент> | авто | наследовать
Начальный: авто
Применимо к: позиционируемым элементам
Унаследовано: нет
Проценты: относятся к ширине содержащего блока
Медиа: визуальный
Вычисленное значение: , если
указанная как длина, соответствующая абсолютная длина; если
указанное в процентах указанное значение; иначе,

Аналогично ‘top’, но указывает, насколько далеко находится правый край поля.
смещение слева от правого края содержащего блока блока. Для относительно
расположенные блоки, смещение относительно правого края
сам ящик.

Значение: <длина> | <процент> | авто | наследовать
Начальный: авто
Применимо к: позиционируемым элементам
Унаследовано: нет
Проценты: относятся к высоте содержащего блока
Медиа: визуальный
Вычисленное значение: , если
указанная как длина, соответствующая абсолютная длина; если
указанное в процентах указанное значение; в противном случае — «авто».

Аналогично ‘top’, но указывает, насколько далеко нижний край поля находится
смещение над нижней частью содержащего блока блока. Для относительно
расположенные боксы, смещение относительно нижнего края
сам ящик.

Значение: <длина> | <процент> | авто | наследовать
Начальный: авто
Применимо к: позиционируемым элементам
Унаследовано: нет
Проценты: относятся к ширине содержащего блока
Медиа: визуальный
Вычисленное значение: , если
указанная как длина, соответствующая абсолютная длина; если
указанное в процентах указанное значение; иначе,

Аналогично ‘top’, но указывает, насколько далеко левый край поля находится
смещение вправо от левого края содержащего блока блока. Для относительно
расположенные блоки, смещение относительно левого края
сам ящик.

Значения четырех свойств имеют следующие значения:

Смещение является фиксированным расстоянием от опорного края. Допускаются отрицательные значения.
Смещение — это процент от ширины содержащего блока (для «левого» или «правого») или высоты (для «верха» и «низа»).Допускаются отрицательные значения.
Для незамещенных элементов влияние этого значения
зависит от того, какое из связанных свойств имеет значение «авто» как
Что ж. См. Разделы на
и высота
абсолютно позиционированных,
незаменимые элементы для подробностей. Для замененных элементов
влияние этого значения зависит только от внутренних размеров
замененный контент. Смотрите разделы по ширине и высоте абсолютно
позиционировал, заменял элементы на детали.

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

9.4.1 Контексты форматирования блоков

Плавающие элементы, элементы с абсолютным позиционированием, блочные контейнеры (например,
inline-block, table-cells и table-captions), которые не являются блочными
боксы и блоки с «переполнением», отличным от «видимого»
(кроме случаев, когда это значение было распространено на область просмотра) установить
новые контексты форматирования блоков для их содержимого.

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

В контексте форматирования блока левый внешний край каждого блока касается
левый край содержащего блока (для форматирования справа налево, справа
края касаются). Это верно даже при наличии поплавков (хотя
box’s line box может сжиматься из-за поплавков), если только box
устанавливает новый контекст форматирования блока (в этом случае сам блок
может стать уже из-за

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

9.4.2 Контексты встроенного форматирования

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

Ширина линейного бокса определяется содержащим блоком и наличием плавающих элементов.
Высота строки
box определяется правилами, приведенными в разделе о расчете высоты строки.

Строка всегда достаточно высока для всех содержащихся в ней коробок.
Однако он может быть выше самого высокого содержащегося в нем ящика.
(если, например, прямоугольники выровнены так, что базовые линии совпадают).Когда высота бокса B меньше, чем высота строчного бокса, содержащего его,
вертикальное выравнивание B внутри линейного блока определяется
свойство ‘vertical-align’.
Когда несколько боксов встроенного уровня не могут уместиться по горизонтали в одном
линейного блока, они распределяются между двумя или более вертикально сложенными
строчные коробки. Таким образом, абзац представляет собой вертикальную стопку строчных полей. Линия
коробки укладываются друг на друга без вертикального разделения (кроме указанных
в другом месте), и они никогда не пересекаются.

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

Когда общая ширина боксов встроенного уровня на линии меньше, чем
ширина линейного бокса, содержащего их, их горизонтальное распределение
внутри строчного поля определяется свойством text-align. Если это
свойство имеет значение justify, пользовательский агент может растягивать пробелы
и слова в строковых блоках (но не строчные таблицы и строчные блоки

Когда встроенный блок превышает ширину линейного блока, он разделяется на несколько блоков, и эти блоки распределяются по нескольким строчным блокам. Если встроенный блок не может быть разделен (например, если встроенный блок содержит один символ или правила разбиения слов на конкретном языке запрещают разрыв внутри встроенного блока, либо если на встроенный блок влияет значение пробела nowrap или pre ), то встроенный блок переполняет строчный блок.

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

Встроенные блоки также могут быть разделены на несколько блоков внутри
та же строка
из-за двунаправленного текста

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

Вот пример конструкции встроенного блока. Следующий абзац
(создается элементом уровня блока HTML P) содержит анонимный текст
с вкраплениями EM и STRONG:


Появляется несколько выделенных слов в этом предложении, дорогой.

Элемент P генерирует блок-бокс, содержащий пять встроенных
ящиков, три из которых анонимные:

  • Аноним: «Несколько»
  • EM: «подчеркнутые слова»
  • Аноним: «появляются»
  • СИЛЬНЫЙ: «в этом»
  • Аноним: «приговор, дорогой. «

Чтобы отформатировать абзац, пользовательский агент помещает пять полей в
строчные коробки. В этом примере поле, созданное для элемента P
устанавливает содержащий блок для строковых боксов. Если содержащий
блок достаточно широк, все встроенные боксы поместятся в
однострочный блок:

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

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

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

или вот так:

Несколько  подчеркнули 
  слов  появляются  в этом 
приговор, дорогой.

В предыдущем примере блок EM был разделен на два блока EM.
(назовите их «split1» и «split2»). Поля, границы,
отступы или текстовые украшения не имеют видимого эффекта после split1 или
перед split2.

Рассмотрим следующий пример:


     Пример встроенного потока на нескольких строках 
    <СТИЛЬ type = "текст / css">
      EM {
        отступ: 2 пикселя;
        маржа: 1em;
        ширина границы: средний;
        стиль границы: пунктирная;
        высота строки: 2.4em;

Здесь появляется несколько выделенных слов .

В зависимости от ширины P коробки могут быть распределены как

  • Поле вставляется перед словами «подчеркнуто» и после «слов».
  • Заполнение вставлено перед, сверху и снизу.
    «подчеркнутый» и после, над и под «словами». А
    Пунктирная граница отображается с трех сторон в каждом случае.

9.4.3 Относительное позиционирование

После того, как блок был выложен в соответствии с нормальным потоком или перемещен, его можно сдвинуть относительно
эта позиция. Это называется относительным позиционированием . Смещение коробки
(B1) таким образом не влияет на следующий блок (B2): B2 — это
задано положение, как если бы B1 не был смещен, а B2 не перемещен
после применения смещения B1.Это означает, что относительное позиционирование
может привести к наложению ящиков.
Однако, если относительное позиционирование вызывает переполнение: авто или
поле «переполнение: прокрутка», чтобы иметь
переполнение, UA должен разрешить пользователю доступ к этому контенту (по его смещению
position), которые, создавая полосы прокрутки, могут повлиять на макет.

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

Для относительно расположенных элементов, «влево» и «вправо» перемещают
коробки по горизонтали, не меняя их размера. «Влево» перемещает
прямоугольники вправо, а «right» перемещает их влево. Поскольку коробки
не разделяются и не растягиваются в результате «левого» или «правого»
всегда используются следующие значения: left = -right.

Если и ‘left’, и ‘right’ — ‘auto’ (их начальные значения),
используемые значения равны ‘0’ (т. е. поля остаются в исходном положении.

Если ‘left’ — ‘auto’, его используемое значение — минус значение ‘right’.
(я.е., квадраты перемещаются влево на значение «вправо»).

Если ‘right’ задано как ‘auto’, его используемое значение минус
значение «влево».

Если ни «влево», ни «вправо» не являются «авто», положение
чрезмерно ограничены, и одно из них следует игнорировать. Если свойство ‘direction’ содержащего блока — ‘ltr’, значение ‘left’ побеждает, а значение ‘right’
становится «левым». Если ‘direction’ содержащего блока ‘rtl’, ‘right’ побеждает, а ‘left’ игнорируется.


Пример. Следующие три правила эквивалентны:

div. a8 {положение: относительное; направление: ltr; слева: -1em; right: auto}
div.a8 {положение: относительное; направление: ltr; слева: авто; справа: 1em}
div.a8 {положение: относительное; направление: ltr; слева: -1em; справа: 5em}

Свойства ‘top’ и ‘bottom’ перемещаются относительно друг друга.
элемент (ы) вверх или вниз без изменения их размера. «Вверх» перемещает
ящики вниз, а «дно» перемещает их вверх. Поскольку коробки
не расщепляются и не растягиваются в результате «верха» или «низа»,
всегда используются следующие значения: верх =-низ.Если оба являются «автоматическими», их используемые значения равны «0». Если один из них
«авто» становится отрицательным по отношению к другому. Если ни один из них не является «авто»,
‘дно’ игнорируется (т. е. используемое значение ‘дно’ будет
минус значение ‘top’).

Динамическое движение относительно расположенных ящиков может производить
эффекты анимации в средах сценариев (см. также свойство «видимость»).
Хотя относительное позиционирование может использоваться как форма надстрочного индекса и
индексирования, высота строки не регулируется автоматически, чтобы принять
позиционирование во внимание.См. Описание расчета высоты строки для получения дополнительной информации.

Примеры относительного позиционирования представлены в разделе сравнения нормального потока, поплавка и абсолютного

Поплавок — это прямоугольник, который смещается влево или вправо на
текущая строка. Самая интересная характеристика поплавка (или
«плавающий» или «плавающий» блок) означает, что содержимое может течь вдоль его стороны
(или иметь запрет на это свойство ‘clear’). Контент течет вниз
правая сторона плавающего влево блока и вниз по левой стороне
коробка с правым верхом.Ниже приводится введение в float.
позиционирование и поток контента; точные правила, регулирующие поведение поплавков, приведены в
описание «поплавка»

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

Если горизонтального места недостаточно для
поплавок, он смещается вниз до тех пор, пока не войдет
присутствует больше поплавков.

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

Линейный прямоугольник рядом с поплавком, когда существует вертикальное положение
который удовлетворяет всем этим четырем условиям: (а) на вершине или ниже
строчной рамки, (b) в нижней части строчной рамки или выше нее, (c) ниже
край верхнего поля поплавка и (г) над краем нижнего поля

Примечание: это означает, что поплавки с нулевой внешней высотой или
отрицательная внешняя высота не укорачивает строчные боксы

Если поле сокращенной строки слишком мало, чтобы содержать какое-либо содержимое, тогда
линейный прямоугольник сдвигается вниз (и его ширина пересчитывается) до тех пор, пока
либо какой-то контент подходит, либо поплавков больше нет.
Любое содержимое в текущей строке перед переформатированием плавающего блока
в той же строке с другой стороны поплавка.
Другими словами, если блоки встроенного уровня размещаются
в строке перед обнаружением левого поплавка, который помещается в оставшееся пространство строчного поля,
левый поплавок помещается в эту строку, выровненный по верхнему краю линейного бокса, а затем боксы встроенного уровня, уже находящиеся в строке, перемещаются соответственно вправо от поплавка (правая сторона является другой стороной левого поплавка) и наоборот для rtl и right float.

Граница таблицы, заменяемый элемент на уровне блока или элемент в нормальном потоке, который устанавливает новый контекст форматирования блока.
(например, элемент с «переполнением», отличным от «видимого»)
не должны перекрывать поле полей любых поплавков в одном блоке
контекст форматирования как
сам элемент. При необходимости реализации должны очистить
указанный элемент, поместив его под любыми предыдущими поплавками, но может разместить
он примыкает к таким поплавкам, если достаточно места.
Они могут даже сделать рамку указанного элемента уже, чем
определено разделом 10.3.3.
CSS2 не определяет, когда UA может поместить указанный элемент рядом с поплавком.
или насколько этот элемент может стать уже.


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

p {ширина: 10em; бордюр: сплошной цвет морской волны; }
span {float: left; ширина: 5em; высота: 5em; граница: сплошной синий; }




Этот фрагмент может выглядеть так:

Несколько поплавков могут находиться рядом, и эта модель также применима к
соседние поплавки в одной строке.


Следующее правило размещает все поля IMG с
class = «icon» слева (и
устанавливает левое поле на ‘0’):

img.icon {
  плыть налево;
  маржа слева: 0;

Рассмотрим следующий источник HTML и таблицу стилей:


     Пример с плавающей точкой 
    <СТИЛЬ type = "текст / css">
      IMG {float: left}
      BODY, P, IMG {margin: 2em}

Это изображение иллюстрирует плавающие объекты Какой-то образец текста, у которого нет другого ...

Поле IMG перемещается влево. Следующее содержание
форматируется справа от поплавка, начиная с той же строки, что и
плавать.Линейные боксы справа от поплавка укорачиваются из-за
присутствия поплавка, но сохраняют свою «нормальную» ширину (ширину
содержащий блок, установленный элементом P) после поплавка. Этот
документ может быть отформатирован как:

Форматирование было бы точно таким же, если бы документ


Пример текста Это изображение иллюстрирует плавающие объекты нет другого ...

, потому что содержимое слева от поплавка смещено
поплавок и оплавил его правую сторону.

Как указано в разделе 8.3.1,
поля плавающих боксов никогда не сжимаются с полями
соседние ящики. Таким образом, в предыдущем примере вертикальные поля не
свернуть между блоком P
и всплывающее окно IMG.

Содержимое поплавков складывается так, как если бы поплавки генерировали новые
контексты наложения, за исключением того, что любые расположенные элементы и элементы
которые на самом деле создают новые
Контексты стекирования принимают участие в родительском контексте стекирования поплавка.
Поплавок может перекрывать другие коробки в нормальном потоке (например,г., когда
коробка нормального потока рядом с поплавком имеет отрицательные поля). Когда это
происходит, поплавки отображаются перед непозиционированными в потоке
блоки, но позади in-flow inlines.


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


Плавающее изображение закрывает границы
блок-боксов он перекрывает.

В следующем примере показано использование свойства clear для предотвращения содержимого
от течения рядом с поплавком.


Предполагая такое правило, как это:

p {clear: left}


может выглядеть так:


В обоих параграфах установлено «clear: left», что
заставляет второй абзац «сдвигаться» в позицию ниже
поплавок — «зазор» добавляется над его верхним полем к
выполнить это (см. свойство «очистить»).

9.5.1 Установка поплавка:
‘float’ свойство

Значение: осталось | право | нет | наследовать
Начальное: нет
Применимо к: всем, кроме см. 9.7
Унаследовано: нет
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

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

Элемент генерирует блок-бокс, который
плавал влево. Контент располагается в правой части поля,
начиная сверху (с учетом свойства clear).
Аналогично «левому», за исключением того, что блок перемещается вправо, а содержимое перетекает в левую часть блока, начиная сверху.
Ящик не плавает.

Пользовательские агенты могут рассматривать float как «none» в корневом элементе.

Вот точные правила, которые
управлять поведением поплавков:

  1. Левый внешний край
    Плавающий влево блок не может быть слева от левого края содержащего его блока. An
    аналогичное правило справедливо для элементов, плавающих вправо.
  2. Если текущий блок плавающий влево, и есть какие-либо плавающие влево
    блоки, созданные элементами ранее в исходном документе,
    то для каждого такого более раннего блока должен быть либо левый внешний край текущего блока.
    справа от правого внешнего края
    более ранней коробки, или ее верх должен быть ниже низа
    ранее коробка.Аналогичные правила справедливы для боксов, плавающих вправо.
  3. Правый внешний край
    Плавающий влево прямоугольник не может быть справа от левого внешнего края любого плавающего вправо
    коробка, которая находится рядом с ней. Аналогичные правила верны для
    плавающие вправо элементы.
  4. Внешний верх плавающего ящика
    не может быть выше вершины содержащего его блока.
    Когда поплавок находится между двумя сворачивающимися полями,
    float позиционируется, как если бы у него был пустой родительский анонимный блок, принимающий участие в
    течение.Положение такого родителя определяется правилами в разделе о марже.
  5. Внешний верх плавающего ящика
    не может быть выше внешней вершины любого блока или плавающего бокса, созданного элементом
    ранее в исходном документе.
  6. Внешний верх элемента
    плавающий блок не может быть выше вершины любого строчного блока, содержащего блок
    сгенерированный элементом ранее в исходном документе.
  7. Плавающий влево блок, слева от которого находится еще один плавающий влево блок.
    не может иметь его правый внешний край справа от содержащего
    правый край блока.(Неплотно: левый поплавок может не торчать на
    правый край, если он уже не находится как можно дальше влево.)
    аналогичное правило справедливо для элементов, плавающих вправо.
  8. Плавающий ящик должен быть размещен как можно выше.
  9. Плавающий влево прямоугольник нужно поставить как можно левее.
    возможно, плавающий вправо прямоугольник как можно дальше вправо. А
    более высокое положение предпочтительнее, чем положение, расположенное дальше
    лево право.

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

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


Этот фрагмент HTML приводит к перемещению символа b вправо.



Если ширина элемента P достаточна, то a и b будут рядом.
сторона. Это могло бы выглядеть так:

9.5.2 Управление потоком рядом с поплавками:
свойство ‘clear’

Значение: нет | слева | право | оба | наследовать
Начальное: нет
Применимо к: блочным элементам
Унаследовано: нет
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

Это свойство указывает, какие стороны блока (ов) элемента могут
, а не , находится рядом с более ранним плавающим блоком.»Ясный»
свойство не учитывает числа с плавающей запятой внутри самого элемента или в
другое форматирование блока

Значения имеют следующие значения применительно к неплавающим
блочные боксы:

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

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

Вычисление зазора элемента, для которого установлено значение «clear»,
выполняется путем определения гипотетического положения элемента
верхний край границы. Эта позиция
где был бы фактический верхний край границы, если бы элемент
«чистое» свойство было «нет».

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

Затем устанавливается больший зазор из:

  1. Величина, необходимая для четного размещения граничного края блока
    с нижним внешним краем самого нижнего поплавка, который должен быть

  2. Величина, необходимая для размещения верхней границы края блока
    в его гипотетическом положении.

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

Примечание: Оба поведения разрешены
ожидает оценки их совместимости с существующим веб-контентом. А
будущая спецификация CSS потребует либо того, либо другого.

Примечание: зазор может быть отрицательным или нулевым.


Пример 1. Предположим (для простоты), что у нас есть только
три поля в следующем порядке: блок B1 с нижним полем M1 (B1
не имеет дочерних элементов, отступов или границ), плавающий блок F с
высота H и блок B2 с верхним полем M2 (без отступов или границ,
нет детей).B2 имеет «clear» установлен на «both». Мы также предполагаем, что B2 не

Без учета свойства «чистота» на B2, мы имеем ситуацию в
диаграмму ниже. Границы B1 и B2 рушатся. Скажем,
нижняя граница границы B1 находится в точке y = 0, затем верхняя граница F находится в точке y = M1,
верхняя граница B2 находится в точке y = max (M1, M2), а нижняя граница F —
при y = M1 + H.

Мы также предполагаем, что B2 не ниже F, т. Е. Мы находимся в
Ситуация, описанная в спецификации, где нам нужно добавить зазор.Который

макс (M1, M2)

Нам нужно вычислить зазор C дважды, C1 и C2, и
оставьте большее из двух: C = max (C1, C2). Первый способ — поставить
верх B2 на одном уровне с низом F, то есть в точке y = M1 + H.
означает, что поля больше не сжимаются с зазором между

низ F = верхний край границы B2 B2

M1 + H = M1 + C1 + M2 ⇔

C1 = M1 + H — M1 — M2

= H — M2

Второе вычисление состоит в том, чтобы сохранить верхнюю часть B2, т.е.е., в у
= макс (M1, M2). Это означает:

макс (M1, M2) = M1 + C2 + M2 ⇔

C2 = макс (M1, M2) — M1 — M2

Мы предположили, что max (M1, M2)

C2 = макс (M1, M2) — M1 — M2


А так как C1 = H — M2, то


и, следовательно,

C = макс (C1, C2) = C1

Пример (ы):

Пример 2.Примером отрицательного разрешения является эта ситуация в
зазор -1em. (Предположим, что ни один из элементов не имеет границ или

Первый параграф.

Плавающий абзац.

Последний абзац.

Пояснение: Без «ясно», первый и последний абзацы »
поля исчезнут, а верхний край границы последнего абзаца будет
быть на одном уровне с верхом плавающего абзаца. Но «ясно»
требует, чтобы верхняя граница была на ниже поплавка, т.е.е., 2em
ниже. Это означает, что необходимо ввести зазор. Соответственно,
поля больше не сжимаются, а размер зазора устанавливается таким образом, чтобы
зазор + margin-top = 2em, то есть зазор = 2em — margin-top = 2em
— 3em = -1em.

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

  • Верхний внешний край
    поплавка должно быть ниже нижнего внешнего
    край всех ранее плавающих влево блоков (в случае ‘clear:
    left ‘) или все предыдущие блоки, плавающие вправо (в случае’ clear:
    правильно ‘) или оба (‘ ясно: оба ‘).

Это свойство применяется ко всем элементам в CSS1. Реализации
таким образом, возможно, поддерживал это свойство для всех элементов. В CSS2
и CSS 2.1 свойство clear применяется только к элементам уровня блока.
Поэтому авторам следует использовать это свойство только на уровне блоков.
элементы. Если реализация поддерживает очистку встроенных элементов,
вместо того, чтобы устанавливать зазор, как описано выше,
реализация должна вызвать разрыв и эффективно вставить одно или несколько пустых строковых блоков (или сдвинуть новое строковое поле вниз, как описано в разделе 9.5), чтобы переместить верхнюю часть очищенного строчного поля строки ниже соответствующего плавающего поля (ов).

В модели абсолютного позиционирования прямоугольник явно смещен с
относительно содержащего его блока. Удаляется из нормального потока
полностью (это не влияет на более поздних братьев и сестер). Абсолютно
позиционированный блок устанавливает новый содержащий блок для нормального потока
дети и абсолютно (но не фиксированные) позиционированные потомки. Однако содержание
абсолютно позиционированный элемент не обтекает другие блоки.Они
могут скрывать содержимое другого ящика (или сами скрывать),
в зависимости от
укладывать уровни перекрывающихся боксов.

Ссылки в данной спецификации на
абсолютно позиционирован
(или его поле) подразумевает, что свойство ‘position’ элемента имеет значение
«абсолютный» или «фиксированный».

9.6.1 Фиксированное позиционирование

Фиксированное позиционирование — это подкатегория абсолютного позиционирования. В
Единственное отличие состоит в том, что для фиксированного блока, содержащий
блок устанавливается окном просмотра. Для непрерывных носителей фиксированный
коробки не перемещаются при прокрутке документа. В этом отношении они
похожи на фиксированные
фоновые изображения. Для страничных медиа, ящики
с фиксированными позициями повторяются на каждой странице. Это полезно для
размещение, например, подписи внизу каждой страницы.
Ящики с фиксированным положением, превышающие площадь страницы
обрезано. Части блока фиксированного положения, которые не видны в
исходный содержащий блок не будет печататься.

Авторы могут использовать фиксированное позиционирование для создания презентаций в виде фреймов.Рассмотрим следующую компоновку рамы:

Этого можно достичь с помощью следующего HTML-документа и
правила стиля:


     Рамочный документ с CSS 2.1 
    <СТИЛЬ type = "text / css" media = "screen">
      BODY {height: 8.5in} / * Требуется для роста в процентах ниже * /
      #header {
        положение: фиксированное;
        ширина: 100%;
        высота: 15%;
        верх: 0;
        справа: 0;
        внизу: авто;
        слева: 0;
      #sidebar {
        положение: фиксированное;
        ширина: 10em;
        высота: авто;
        верх: 15%;
        справа: авто;
        внизу: 100 пикселей;
        слева: 0;
      #главный {
        положение: фиксированное;
        ширина: авто;
        высота: авто;
        верх: 15%;
        справа: 0;
        внизу: 100 пикселей;
        слева: 10em;
      #footer {
        положение: фиксированное;
        ширина: 100%;
        высота: 100 пикселей;
        верх: авто;
        справа: 0;
        внизу: 0;
        слева: 0;

Три свойства, которые влияют на создание и компоновку блока:
‘позиция’ и
‘float’ — взаимодействовать следующим образом:

  1. Если ‘display’
    имеет значение ‘none’, тогда
    ‘позиция’ и
    ‘float’ не применяются.
    В этом случае элемент не создает бокса.
  2. В противном случае, если ‘position’
    имеет значение ‘absolute’ или ‘fixed’, поле абсолютно позиционировано,
    значение float равно none,
    и отображение настраивается в соответствии с таблицей ниже.Положение поля будет определяться свойствами «сверху», «справа», «снизу» и «слева», а также свойствами поля.
    содержащий блок.
  3. В противном случае, если ‘float’ имеет значение, отличное от ‘none’, поле
    с плавающей точкой и «отображение» устанавливается в соответствии с приведенной ниже таблицей.
  4. В противном случае, если элемент является корневым элементом,
    ‘display’ устанавливается в соответствии с таблицей ниже, за исключением того, что это
    undefined в CSS 2.1, указывает ли указанное значение ‘list-item’
    становится вычисленным значением ‘block’ или ‘list-item’.
  5. В противном случае применяются остальные значения свойства display.
    как указано.
Заданное значение Вычисленное значение
inline-table table
inline, table-row-group, table-column,
группа столбцов таблицы, группа заголовков таблицы, группа нижнего колонтитула таблицы, строка-таблицы,
table-cell, table-caption, inline-block
other как указано

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


     Сравнение схем позиционирования 

Начало содержимого тела. Начало внешнего содержимого. Внутреннее содержимое. Конец внешнего содержимого. Конец содержимого тела.

В этом документе мы принимаем следующие правила:

тело {дисплей: блок; размер шрифта: 12 пикселей; высота строки: 200%;
       ширина: 400 пикселей; height: 400px}
p {display: block}
диапазон {display: inline}

Конечные позиции ящиков, генерируемых внешним и
внутренних элементов различаются в каждом примере. На каждой иллюстрации
цифры слева от иллюстрации указывают нормальное положение потока двойного интервала (для
четкость) линий.

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

9.8.1 Нормальный поток

Рассмотрим следующие объявления CSS для внешнего и
внутренний , которые не меняют нормальный
поток ящиков:

#outer {color: red}
#inner {цвет: синий}

Элемент P содержит все встроенное содержимое: анонимный встроенный текст и два SPAN
элементы.Поэтому весь контент будет выложен
во встроенном контексте форматирования внутри содержащего блока
устанавливается элементом P, создавая что-то вроде:

9.8.2 Относительное позиционирование

Чтобы увидеть эффект относительного
позиционирование, указываем:

#outer {положение: относительное; верх: -12px; красный цвет }
#inner {позиция: относительная; верх: 12 пикселей; цвет синий }

Текст обычно передается до внешнего элемента . В
внешний текст затем переводится в нормальное положение и
размеры в конце строки 1.Затем встроенные поля, содержащие
текст (распределенный по трем строкам) сдвигается как единое целое на ‘-12px’

Содержимое внутреннего , как дочернего элемента внешнего , будет
обычно идут сразу после слов «внешнего содержимого» (в строке
1.5). Однако внутреннее содержимое само смещено.
относительно внешнего содержимого на «12 пикселей» (вниз), назад к
их исходное положение в строке 2.

Обратите внимание, что содержимое после внешнего не зависит от
относительное расположение внешнего .

Обратите внимание, что если бы смещение внешнего было ‘-24px’,
текст внешнего и основной текст перекрывались бы.

9.8.3 Плавающий прямоугольник

Теперь рассмотрим эффект плавающего прямоугольника.
внутренний текст элемента справа с помощью следующих

#outer {color: red}
#inner {float: right; ширина: 130 пикселей; цвет синий }

Текст обычно перетекает до внутреннего поля , которое вытягивается
вне потока и перемещается к правому краю (его «ширина» была назначена явно).Линии слева от поплавка укорачиваются, а
в них перетекает оставшийся текст документа.

Чтобы показать эффект свойства ‘clear’, мы добавляем родственника
элемент к примеру:


     Сравнение схем позиционирования II 

Начало содержимого тела. Начало внешнего содержимого. Внутреннее содержимое. Одноуровневое содержимое. Конец внешнего содержимого. Конец содержимого тела.

Следующие правила:

#inner {float: right; ширина: 130 пикселей; цвет синий }
#sibling {цвет: красный}

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

Однако, если «очистить»
для элемента родственного брата установлено значение ‘right’ (т.е.е.,
сгенерированный sibling box не примет позицию рядом с
плавающие прямоугольники справа), содержимое родственника начинает
поток ниже поплавка:

#inner {float: right; ширина: 130 пикселей; цвет синий }
#sibling {ясно: правильно; красный цвет }

9.8.4 Абсолютное позиционирование

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

#outer {
    позиция: абсолютная;
    верх: 200 пикселей; слева: 200 пикселей;
    ширина: 200 пикселей;
    красный цвет;
#inner {цвет: синий}

, что приводит к размещению верхней части внешнего блока с
относительно содержащего его блока. Содержащий блок для позиционированного
box устанавливается ближайшим предком (или, если нет
существует, инициал, содержащий
блок, как в нашем примере). Верхняя сторона внешней коробки
на 200 пикселей ниже верха содержащего блока, а левая сторона
«200 пикселей» слева. Дочерняя коробка , внешняя — обтекаемая.
обычно по отношению к своему родителю.

В следующем примере показан блок с абсолютным позиционированием, который
дочерний элемент относительно расположенного бокса.Хотя родитель
внешнее поле фактически не смещено, для его свойства position установлено значение relative.
означает, что его поле может служить содержащим блоком для позиционированного
потомки. Поскольку внешний блок является встроенным блоком,
разделить на несколько строк, верхний и левый края первого встроенного блока
(обозначено жирными пунктирными линиями на иллюстрации ниже)
служат в качестве ссылок для «топ» и
«левые» смещения.

#outer {
  положение: относительное;
  красный цвет
#внутренний {
  позиция: абсолютная;
  верх: 200 пикселей; слева: -100 пикселей;
  высота: 130 пикселей; ширина: 130 пикселей;
  цвет синий;

Это приведет к примерно следующему:

Если мы не разместим внешнюю коробку :

#outer {color: red}
#внутренний {
  позиция: абсолютная;
  верх: 200 пикселей; слева: -100 пикселей;
  высота: 130 пикселей; ширина: 130 пикселей;
  цвет синий;

содержащий блок для внутреннего становится начальным содержащим блоком (в нашем
пример).На следующем рисунке показано, где внутренний
box в этом случае закончится.

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


Я использовал два красных дефиса в качестве панели изменений. Они будет "плавать" слева от строки, содержащей ЭТО - слово.

может дать что-то вроде:

Сначала абзац (стороны блока которого показаны в
иллюстрация) протекает нормально. Затем он смещается на 10 пикселей от
левый край содержащего блока (таким образом, правое поле 10 пикселей имеет
были зарезервированы в ожидании компенсации). Два дефиса действуют
поскольку полосы изменений вынимаются из потока и помещаются в текущее
строка (из-за ‘top: auto’), ‘-1em’ от левого края содержащего
блок (установлен буквой P в ее конечном положении). Результат
что полосы изменений кажутся «плавающими» слева от текущего

9.9.1 Указание уровня стека: свойство z-index

Значение: авто | <целое число> | наследовать
Начальный: авто
Применимо к: позиционируемым элементам
Унаследовано: нет
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

Для позиционированного блока свойство z-index определяет:

  1. Уровень стека бокса в текущем контексте стека.
  2. Устанавливает ли бокс контекст наложения.

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

<целое число>

Это целое число — уровень стека сгенерированного блока в
текущий контекст наложения. Коробка также устанавливает новую укладку


Уровень стека сгенерированного бокса в текущем стеке
context равен 0. Блок не устанавливает новый контекст наложения.
если это не корневой элемент.

В этом разделе выражение «перед»
означает ближе к пользователю, когда пользователь смотрит на экран.

В CSS 2.1 у каждого блока есть позиция в трех измерениях. Кроме того
в горизонтальное и вертикальное положение, прямоугольники лежат вдоль «оси z»
и форматируются один над другим. Положения оси Z
особенно актуально, когда коробки визуально перекрываются. Эта секция
обсуждает, как блоки могут быть расположены вдоль оси z.

Порядок рисования дерева рендеринга на холсте:
описаны в терминах контекстов наложения.Контексты стекирования могут
содержат дополнительные контексты наложения. Контекст стекирования является атомарным из
точка зрения его родительского контекста стекирования; коробки в другом
контексты наложения не могут находиться между его блоками.

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

Корневой элемент формирует корневой контекст стекирования. Другая укладка
контексты генерируются любым позиционированным элементом (включая
относительно позиционированные элементы) с вычисленным значением ‘z-index’
кроме «авто». Контексты стекирования не обязательно связаны с
содержащие блоки. На будущих уровнях CSS другие свойства могут
ввести контексты наложения, например «непрозрачность»

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

  1. фон и границы элемента, образующего укладку

  2. дочерние контексты стека с отрицательными уровнями стека (большинство
    сначала отрицательный).

  3. входящие, не встроенные, непозиционированные потомки.
  4. непозиционированные поплавки.
  5. входящие, встроенные, непозиционированные потомки, включая
    встроенные таблицы и встроенные блоки.
  6. дочерние контексты стека с уровнем стека 0 и
    позиционируют потомков с уровнем стека 0.

  7. дочерние контексты стека с положительными уровнями стека (минимум
    положительный в первую очередь).

Внутри каждого контекста стека позиционированные элементы с уровнем стека
0 (в слое 6), непозиционированные поплавки (слой 4), встроенные
блоки (уровень 5) и встроенные таблицы (уровень 5) окрашиваются
как если бы эти элементы сами генерировали новые контексты наложения,
за исключением того, что их предполагаемые потомки и любой потенциальный ребенок
контексты наложения принимают участие в текущем контексте наложения.

Этот порядок покраски применяется рекурсивно к каждой укладке.
контекст. Это описание порядка отрисовки контекста наложения
представляет собой обзор подробного нормативного определения в
Приложение E.

В следующем примере уровни стека
ящики (названные в соответствии с их атрибутами «id»):
«text2» = 0, «image» = 1, «text3» = 2 и «text1» = 3. В
Уровень стека «text2» наследуется от корневого блока. В
другие указываются свойством z-index.


     Расположение в Z-порядке 
    <СТИЛЬ type = "текст / css">
      .куча {
        позиция: абсолютная;
        слева: 2 дюйма;
        верх: 2 дюйма;
        ширина: 3 дюйма;
        высота: 3 дюйма;

Изображение бабочки

Этот текст будет наложен на изображение бабочки.
Этот текст будет ниже всего.
Этот текст будет лежать в основе text1, но наложить на изображение бабочки

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

фоновые свойства.

Соответствующие пользовательские агенты, которые
не поддерживает двунаправленный текст, может игнорировать свойства ‘direction’ и ‘unicode-bidi’
описано в этом разделе.Это исключение включает UA, которые отображают
символы с письмом справа налево просто потому, что шрифт в системе их содержит
но не поддерживают концепцию направления текста справа налево.

В некоторых сценариях символы пишутся справа налево.
оставили. В некоторых документах, в частности написанных арабским
или иврите, а в некоторых смешанных языковых контекстах текст в
одиночный (визуально отображаемый) блок может отображаться со смешанными
направленность. Это явление называется двунаправленностью , или
для краткости «биди».

Стандарт Unicode ([UNICODE], [UAX9]) определяет сложный
алгоритм определения правильной направленности текста. В
алгоритм состоит из неявной части, основанной на свойствах персонажа,
а также явные элементы управления для встраивания и переопределения. CSS 2.1 полагается
на этом алгоритме для достижения правильного двунаправленного рендеринга. Свойства direction и unicode-bidi позволяют
авторов, чтобы указать, как элементы и атрибуты документа
языковая карта для этого алгоритма.

Пользовательские агенты, поддерживающие двунаправленный текст, должны применять Unicode.
двунаправленный алгоритм для каждой последовательности блоков встроенного уровня без прерывания
принудительным (биди
класс B) граница разрыва или блока.Эта последовательность образует
блок «параграф» в двунаправленном алгоритме. Встраивание абзаца
уровень устанавливается в соответствии со значением свойства ‘direction’ содержащего
блок, а не эвристика, указанная на шагах P2 и P3 Unicode

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

Спецификация HTML 4 ([HTML4], раздел 8.2) определяет
двунаправленность HTML-элементов. Таблица стилей
правила, обеспечивающие поведение двунаправленного текста, указанное в [HTML4]:
приведено в образце таблицы стилей. В
Спецификация HTML 4 также содержит дополнительную информацию о
проблемы двунаправленности.

Значение: ltr | rtl | наследовать
Начальный: л
Применимо к: всем элементам, но см. Прозу
Унаследовано: да
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

Это свойство определяет базовое направление записи блоков и
направление встраивания и переопределения (см. unicode-bidi) для Unicode
двунаправленный алгоритм.Кроме того, он определяет такие вещи, как
направление расположения столбцов таблицы, направление
горизонтальный перелив,
позиция незавершенной последней строки в блоке в случае выравнивания текста:

Значения этого свойства имеют следующие значения:

Направление слева направо.
Направление справа налево.

Для «направления»
свойство, влияющее на переупорядочение встроенных элементов, значение свойства unicode-bidi
должно быть «встроить» или «переопределить».

Свойство direction, когда
указанный для элементов столбца таблицы, не наследуется ячейками в
столбец, поскольку столбцы не являются предками ячеек в дереве документа.
Таким образом, CSS не может легко захватить описанные правила наследования атрибута «dir».
в [HTML4], раздел

Значение: нормальное | вставлять | двунаправленный | наследовать
Начальный: нормальный
Применимо к: всем элементам, но см. Прозу
Унаследовано: нет
В процентах: Н / Д
Медиа: визуальный
Расчетное значение: как указано

Значения этого свойства имеют следующие значения:

Элемент не открывает дополнительный уровень встраивания с
относительно двунаправленного алгоритма.Для встроенных элементов
неявное переупорядочение работает вне границ элементов.
Если элемент встроенный, это значение
открывает дополнительный уровень вложения по отношению к
двунаправленный алгоритм. Направление этого уровня встраивания:
дано «направлением»
свойство. Внутри элемента переупорядочивание выполняется неявно. Этот
соответствует добавлению LRE (U + 202A; для ‘direction: ltr’) или RLE
(U + 202B; для ‘direction: rtl’) в начале элемента и PDF
(U + 202C) в конце элемента.
двунаправленное преобразование
Для встроенных элементов это создает переопределение.
Для блочных контейнерных элементов
это создает переопределение для потомков инлайн-уровня вне
другой блок-контейнер
Это означает, что внутри элемента переупорядочивание происходит строго по порядку.
согласно «направлению»
свойство; неявная часть двунаправленного алгоритма
игнорируется. Это соответствует добавлению LRO (U + 202D; for ‘direction:
ltr ‘) или RLO (U + 202E; для’ direction: rtl ‘) в начале
элемент или в начале каждого блока анонимного дочернего блока, если таковой имеется, и
PDF (U + 202C) в конце элемента.

Последний порядок символов в каждом блок-контейнере — это
так же, как если бы контрольные коды двунаправленного текста были добавлены, как описано выше,
разметка была удалена, и результирующая последовательность символов имела
переданы в реализацию двунаправленного Unicode
алгоритм для простого текста, который создавал такие же разрывы строк, что и
стилизованный текст.
В этом процессе элементы заменены на ‘display: inline’
рассматриваются как
нейтральные символы, если их свойство «unicode-bidi» не имеет
значение, отличное от «нормального», и в этом случае они рассматриваются как сильные
персонажи в «направлении»
указан для элемента.Все остальные атомарные блоки инлайн-уровня обрабатываются как нейтральные символы.

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

Поскольку алгоритм Unicode имеет предел
61 уровень из
при внедрении, следует проявлять осторожность, чтобы не использовать unicode-bidi со значением, отличным от
чем «нормально», если не требуется.В частности, значение «наследовать»
следует использовать с особой осторожностью. Однако для элементов, которые
в целом, предназначенные для отображения в виде блоков, настройка
‘unicode-bidi: embed’ предпочтительнее, чтобы элементы оставались вместе в
отображение case изменено на inline (см. пример ниже).

В следующем примере показан XML-документ с двунаправленным
текст. Он иллюстрирует важный принцип дизайна: дизайнеры DTD должны использовать двунаправленные
учитывать как в самом языке (элементы и атрибуты), так и
в любых сопутствующих таблицах стилей.Таблицы стилей должны быть разработаны
так что правила биди отделены от других правил стиля. Правила биди
не должны переопределяться другими таблицами стилей, чтобы документ
поведение двунаправленного текста языка или DTD сохраняется.


В этом примере
строчные буквы обозначают символы с письмом слева направо и
Заглавные буквы представляют собой символы с письмом справа налево:



   english9 english20 english21 HEBREW12 HEBREW13 
   английский24 английский25 английский26 
   english27  HEBREW18 english29 HEBREW20  


Так как это XML, таблица стилей отвечает за установку
направление письма.Это таблица стилей:

/ * Правила для биди * /
ИВРЕЙСКИЙ, HE-QUO {direction: RTL; unicode-bidi: вставлять}
АНГЛИЙСКИЙ {direction: ltr; unicode-bidi: вставлять}

/ * Правила оформления * /
EMPH {font-weight: bold}

Элемент HEBREW — это блок с основным направлением справа налево,
элемент ENGLISH — это блок с основанием слева направо
направление. PAR — это блоки, которые наследуют базовое направление от
их родители.Таким образом, первые два PAR считываются, начиная с самого верха.
справа, последние три читаются, начиная с верхнего левого угла. Пожалуйста, обрати внимание
что HEBREW и ENGLISH выбраны в качестве имен элементов для ясности
Только; в общем, имена элементов должны передавать структуру без
ссылка на язык.

Элемент EMPH является встроенным, и, поскольку его значение для ‘unicode-bidi’ равно ‘normal’ (
начальное значение), это не влияет на порядок текста. В
Элемент HE-QUO, с другой стороны, создает вложение.

Форматирование этого текста может выглядеть так, если длина строки

               5ТИРВИ 4ТИРВИ английский 4 2ТИРВИ 1ТИРВИ

                                8ТИРВИ  7ТИРВИ  6ТИРВИ

английский9 английский20 английский21 13ТИРВИ 12ТИРВИ

английский24 английский25 английский26

английский27 20ИРВИ английский29 18ТИРВИ

Обратите внимание, что встраивание HE-QUO приводит к тому, что HEBREW18 находится справа
of english29.

Если строки должны быть разорваны, это может быть примерно так:

       2ТИРВИ 1ТИРВИ
  -EH 4WERBEH английский4


английский9 английский20 ru-
glish21 12WERBEH

на английском24 на английском25

английский 27 18ТИРВИ
20 ВЕРВИ на английском языке 29

Так как HEBREW18 нужно читать перед english29, он стоит в строке
выше english29.Просто ломая длинную линию из более раннего
форматирование не сработало бы. Также обратите внимание, что первый слог
из english29 могло поместиться в предыдущей строке, но расстановка переносов
слова, которые пишутся слева направо в контексте справа налево, и наоборот,
обычно подавляется, чтобы не отображать дефис посередине

X-Large Мобильная стойка с фиксированной высотой


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


  • VESA: по горизонтали — 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300 x по вертикали — 100, 200, 300, 400, 500, 600
  • Microsoft Surface Hub 2S — Адаптеры входят в комплект и продаются отдельно (Product No. CA / MAC4), подробности уточняйте по телефону.

  • Cisco Webex Boards 70 и 85-дюймовые стойки

Эргономичный дизайн

  • Регулируемая высота (во время установки) позиционирование обеспечивает наилучшую эргономику и обзор.
  • Соответствует ADA.


  • Большие ручки обеспечивают превосходную стабильность и маневренность
  • Регулируемое положение по высоте, устанавливаемое во время сборки
  • Безопасные задние панели обеспечивают легкий доступ к скрытому хранилищу с установленными на ремешке периферийными устройствами
  • Вертикальная стойка 2RU с внутренним управлением кабелями
  • Ролики премиум-класса обеспечивают плавную транспортировку по любой поверхности
  • Вентиляционные отверстия обеспечивают циркуляцию воздуха для периферийных устройств
  • Внешнее хранилище Доступный отсек для хранения спереди
  • Аксессуары Включают: выдвижную катушку для кабеля, заднюю полку для крепления ноутбуков и клавиатур, крепления для динамиков и полку для камеры

Дизайн и конструкция

  • Изготовленная из сварной стали с порошковым покрытием и оснащенная стандартными креплениями VESA, подставка FPS1XL-FH обеспечивает повышенную производительность, непревзойденную гибкость и ценность в течение всего срока службы.


  • Стенд FPS1XL-FH экономит на проектировании, торговле и разрешениях, поскольку нет необходимости крепить дисплей к стене.

Организация и хранение проводов

  • Полностью скрытая кабельная разводка обеспечивает чистую и лаконичную установку.
  • Хранение 2RU для электронных компонентов, периферийных устройств и аксессуаров
  • Каждую подставку для интерактивного дисплея можно настроить в соответствии с развивающейся рабочей средой с помощью аксессуаров, включая выдвижную катушку для кабеля, заднюю полку для крепления ноутбуков и клавиатуры, крепления для динамиков и полку для камеры.
  • Интегрируйте свой FPS в существующую инфраструктуру или используйте дополнительные возможности для разработки собственного индивидуального решения.

Калифорния Предложение 65 ПРЕДУПРЕЖДЕНИЕ


[/ fusion_text] [/ fusion_builder_column] [/ fusion_builder_row] [/ fusion_builder_container]

Surface Hub Комплект

Штифт: Фиксированная область на экране — PC SOFT

  • Фиксирующая область
  • Расположение ячейки control
  • Исправление всплывающей страницы


Pin: фиксированная область на экране

Фиксированная область на странице — это раздел страницы, который остается видимым, даже если веб-пользователь перемещает полосу прокрутки браузера.Эта область (а также находящиеся внутри нее элементы управления) остается видимой во время прокрутки содержимого страницы. Эта область зафиксирована.
WEBDEV предлагает управление фиксированными областями для нескольких типов элементов:

Условие использования : Для использования этой функции страница должна быть создана в HTML5. Режим генерации можно определить:

  • во вкладке «Дополнительно» описания проекта, опция «Режим генерации». Чтобы открыть окно описания проекта, перейдите на панель «Проект», группу «Проект» и нажмите «Описание».В этом случае режим генерации применяется ко всем страницам проекта.
  • во вкладке «Общие» описания страницы, опция «Режим генерации». Чтобы открыть окно описания страницы, выберите «Описание» во всплывающем меню страницы. Эта опция позволяет вам указать режим генерации, который будет использоваться для страницы (он может отличаться от режима генерации, выбранного для других страниц проекта).

Чтобы исправить область макета на странице:

  1. Отобразите страницу в режиме зонирования: щелкните вкладку «Зонирование» в баннере над страницей.
  2. Выберите область макета для исправления и откройте окно описания («Описание области» во всплывающем меню).
  3. Во вкладке «Пользовательский интерфейс» отметьте «Исправлено». Доступны три режима:
    • Всегда фиксировано : Область макета фиксируется в соответствии с параметрами привязки, определенными для области. Эти параметры привязки также определены на вкладке «Пользовательский интерфейс» окна описания области макета. Например, если область макета привязана со следующими характеристиками:
      • X: следовать за левой границей браузера,
      • Y: следовать за серединой браузера,

      область макета останется по центру слева.

    • Исправлено, когда элемент управления касается верхней части браузера. : При прокрутке содержимого страницы область макета фиксируется, когда она достигает верхней части браузера. Доступные варианты:
      • Поле над областью : Это поле соответствует минимальному расстоянию между фиксированной областью макета и верхней частью браузера.
      • Удалите булавку, когда элемент управления достигнет нижней части контейнера. : если этот параметр отмечен и если область макета включена в другую область, фиксированная область макета исчезнет, ​​когда ее родительская область больше не будет отображаться в браузере.
        В этом случае вы можете определить минимальное поле между фиксированной областью макета и его родительской областью («Поле внизу контейнера»).
      • Версии 22 и более поздние
        Скрывать автоматически во время прокрутки : Если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается. Новое в версии 22
        Скрывать автоматически во время прокрутки : Если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается. Скрывать автоматически во время прокрутки : Если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается.
    • Исправлено, когда элемент управления касается нижней части браузера. : При прокрутке содержимого страницы область макета будет фиксированной, когда она достигнет нижней части браузера. Доступные варианты:
      • Поле под областью : Это поле соответствует минимальному расстоянию между фиксированной областью макета и нижней частью браузера.
      • Удалите булавку, когда элемент управления достигнет верхней части контейнера. : если этот параметр отмечен и если область макета включена в другую область, фиксированная область макета исчезнет, ​​когда ее родительская область больше не будет отображаться в браузере.
        В этом случае вы можете определить минимальное поле между фиксированной областью макета и ее родительской областью («Поле сверху контейнера»).
      • Версии 22 и более поздние
        Автоматически скрывать во время прокрутки : Если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается.Новое в версии 22
        Автоматически скрывать во время прокрутки : если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается. Автоматически скрывать во время прокрутки : Если этот параметр отмечен, область макета становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается.

Чтобы исправить элемент управления Cell на странице:

  1. Отобразите страницу, содержащую элемент управления Cell.
  2. Выберите элемент управления Cell, который нужно исправить, и откройте окно описания («Описание» во всплывающем меню).
  3. На вкладке «Пользовательский интерфейс» установите флажок «Закреплено».
  4. Щелкните «Когда элемент управления …», чтобы указать, как фиксируется элемент управления. Доступны три режима:
    • Всегда фиксировано + привязка : Ячейка фиксируется в соответствии с параметрами привязки, определенными для ячейки. Эти параметры привязки также определены на вкладке «Пользовательский интерфейс» окна описания ячейки. Например, если элемент управления Cell закреплен со следующими характеристиками:
      • X: следовать за левой границей браузера
      • Y: следовать за серединой браузера

      , ячейка будет зафиксирована, пока она находится по центру слева.

    • Исправлено, когда элемент управления касается верхней части браузера. : Ячейка будет фиксированной, когда она достигнет верхней части браузера при прокрутке содержимого страницы. Доступные варианты:
      • Поле над элементом управления : это поле соответствует минимальному расстоянию между фиксированной ячейкой и верхней частью браузера.
      • Удалите булавку, когда элемент управления достигнет нижней части контейнера. : если этот параметр отмечен и если ячейка включена в другую область или ячейку, фиксированная ячейка исчезнет, ​​когда ее родительский элемент больше не отображается в браузере.
        В этом случае вы можете определить минимальное расстояние между фиксированной ячейкой и ее родительским элементом («Маржа внизу контейнера»).
      • Версии 22 и более поздние
        Скрывать автоматически во время прокрутки : если этот параметр отмечен, ячейка становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается. Новое в версии 22
        Скрывать автоматически во время прокрутки : если этот параметр отмечен, ячейка становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается. Скрывать автоматически во время прокрутки : Если этот параметр отмечен, ячейка становится невидимой во время прокрутки, а затем появляется, когда прокрутка заканчивается.
    • Исправлено, когда элемент управления касается нижней части браузера.

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

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

      2023 © Все права защищены.