diff options
Diffstat (limited to 'components/layout/inline.rs')
-rw-r--r-- | components/layout/inline.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/components/layout/inline.rs b/components/layout/inline.rs index 78e89b31b31..73332023d5d 100644 --- a/components/layout/inline.rs +++ b/components/layout/inline.rs @@ -8,7 +8,7 @@ use css::node_style::StyledNode; use context::LayoutContext; use display_list_builder::{ContentLevel, DisplayListResult, FragmentDisplayListBuilding}; use floats::{FloatLeft, Floats, PlacementInfo}; -use flow::{BaseFlow, FlowClass, Flow, InlineFlowClass, MutableFlowUtils}; +use flow::{BaseFlow, FlowClass, Flow, ForceNonfloated, InlineFlowClass, MutableFlowUtils}; use flow::{IS_ABSOLUTELY_POSITIONED}; use flow; use fragment::{Fragment, InlineAbsoluteHypotheticalFragment, InlineBlockFragment}; @@ -706,7 +706,7 @@ pub struct InlineFlow { impl InlineFlow { pub fn from_fragments(fragments: InlineFragments, writing_mode: WritingMode) -> InlineFlow { InlineFlow { - base: BaseFlow::new(None, writing_mode), + base: BaseFlow::new(None, writing_mode, ForceNonfloated), fragments: fragments, lines: Vec::new(), minimum_block_size_above_baseline: Au(0), @@ -1116,7 +1116,8 @@ impl Flow for InlineFlow { // Assign block sizes for any inline-block descendants. for kid in self.base.child_iter() { - if flow::base(kid).flags.contains(IS_ABSOLUTELY_POSITIONED) || kid.is_float() { + if flow::base(kid).flags.contains(IS_ABSOLUTELY_POSITIONED) || + flow::base(kid).flags.is_float() { continue } kid.assign_block_size_for_inorder_child_if_necessary(layout_context); |