diff --git a/Userland/Libraries/LibWeb/HTML/HTMLBRElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLBRElement.cpp index 91db220071..015f2462ea 100644 --- a/Userland/Libraries/LibWeb/HTML/HTMLBRElement.cpp +++ b/Userland/Libraries/LibWeb/HTML/HTMLBRElement.cpp @@ -1,9 +1,10 @@ /* - * Copyright (c) 2018-2020, Andreas Kling + * Copyright (c) 2018-2021, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ +#include #include #include @@ -20,7 +21,10 @@ HTMLBRElement::~HTMLBRElement() RefPtr HTMLBRElement::create_layout_node() { - return adopt_ref(*new Layout::BreakNode(document(), *this)); + auto style = document().style_resolver().resolve_style(*this); + if (style->display() == CSS::Display::None) + return nullptr; + return adopt_ref(*new Layout::BreakNode(document(), *this, move(style))); } } diff --git a/Userland/Libraries/LibWeb/Layout/BreakNode.cpp b/Userland/Libraries/LibWeb/Layout/BreakNode.cpp index cbc1c543e1..b1bb55a125 100644 --- a/Userland/Libraries/LibWeb/Layout/BreakNode.cpp +++ b/Userland/Libraries/LibWeb/Layout/BreakNode.cpp @@ -10,8 +10,8 @@ namespace Web::Layout { -BreakNode::BreakNode(DOM::Document& document, HTML::HTMLBRElement& element) - : Layout::NodeWithStyleAndBoxModelMetrics(document, &element, CSS::StyleProperties::create()) +BreakNode::BreakNode(DOM::Document& document, HTML::HTMLBRElement& element, NonnullRefPtr style) + : Layout::NodeWithStyleAndBoxModelMetrics(document, &element, move(style)) { set_inline(true); } diff --git a/Userland/Libraries/LibWeb/Layout/BreakNode.h b/Userland/Libraries/LibWeb/Layout/BreakNode.h index 6d0bc97396..80ec3ed773 100644 --- a/Userland/Libraries/LibWeb/Layout/BreakNode.h +++ b/Userland/Libraries/LibWeb/Layout/BreakNode.h @@ -13,7 +13,7 @@ namespace Web::Layout { class BreakNode final : public NodeWithStyleAndBoxModelMetrics { public: - BreakNode(DOM::Document&, HTML::HTMLBRElement&); + BreakNode(DOM::Document&, HTML::HTMLBRElement&, NonnullRefPtr); virtual ~BreakNode() override; const HTML::HTMLBRElement& dom_node() const { return verify_cast(*Node::dom_node()); }