THIS PAGE IS DEPRECATED AND REPLACED BY THE CSS exclusions and shapes page.
This page contains the issues that are not yet listed in the specification and the resolutions for issues that were in the spec. but got resolved.
There is a companion use cases page.
Floats have a number of aspects/characteristics:
The content if removed from normal flow
A BFC is set up and shrink-wrapped
The BFC is positioned
Relative to the marker left behind when the content is removed
Floats do not overlap one another and are stacked or cleared
Positioning is limited to the “containing block”
The BFC is an exclusion using it Border box as the wrap-shape
For exclusions,
Positioning removes the content from normal flow (or the content is left in normal flow)
Positioning also sets up a BFC and shrink-wraps it; wrap-shape may be default or explicit
Positioning positions the exclusion,
The marker is used to resolve “auto” values in absolute positioning
The Exclusions proposal has groups and order to control exclusion interaction
Interaction is not limited per b.
The wrap-shape (or pair of shapes) is the exclusion.
We noted that “float” should have been better tied to “position” because it currently turns of the “position” property and replaces it.
Vincent: add 'inherit' to all property values.
ACTION 356 Vincent: Make the default value for wrap-mode be auto
Vincent: Create a stub specification for
CSS Floats.
Rossen. Write up the processing model for exclusions.
Editor. Note that the wrapping side (left, right, both) is always 'auto' for floats.
Editor. single trigger and wrap-shape propertyl. With wrap-shape: outside([shape [auto|both|left|right])|auto) inside(shape)
Editor. wrapping options are auto, left, right, both and none. Note that top and bottom is assumed for all values.
Editor. Add that we may consider having multiple shapes to define the inside and ouside shapes separately.
Editor. Add that we should have a 'wrap-shape-outline' or a 'stroke' property to let the user draw the outline of a wrap-shape
Editor. Clarify what happens when there are separate sub-shapes in an exclusion.
Do one pass to position the exclusions. Then, do another pass with the exclusions present.
Triggered with a single property that can specify that an inside or inside wrap-shape exists (or both), and how the content flows around the shape (for outside wrapping). Something like:
wrap-mode: default|none|inside|[outside-[left|right|both]|[all-[left+right+both]
initial: default
Need to define default wrap-mode to be compatible with current float behavior. For example, a 'float: left' should have its default computed wrap-mode be 'outside-right', a 'float: right' would be 'outside-left'.
Use the containing block model of CSS.
Rename flow-wrap to something different like 'external exclusions allowed'.
Same as z-index. Should we have a separate property or not?
Proposal: use the same z-index property because having both z-index and an additional property may create issues and create surprising results.
The shrink wrap is done with the float's box.
The use of 'wrap' in properties such as 'wrap-type' or 'wrap-mode' may be confusing because of a different meaning for wrap in the FlexBox specification ('flex-wrap' property) see Flex Box issues.
- Description
- when an element has a wrap shape (inside our outside), what happens with events that happen within the element's box but outside the outside wrap-shape?
- Proposal
- events are clipped to the 'outside' wrap-shape.
- Description
- should the inside wrap shape be constrained to the outside wrap shape?
- Proposal
- yes, the inside wrap shape should be clipped to the outside wrap shape.