Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Unified Diff: third_party/WebKit/LayoutTests/css-display-3/display-contents-acid-dynamic-1.html

Issue 2450093005: Support display: contents for elements, first-line and first-letter pseudos. (Closed)
Patch Set: Support display: contents for elements, first-line and first-letter pseudos. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/css-display-3/display-contents-acid-dynamic-1.html
diff --git a/third_party/WebKit/LayoutTests/css-display-3/display-contents-acid-dynamic-1.html b/third_party/WebKit/LayoutTests/css-display-3/display-contents-acid-dynamic-1.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9f960c23c6cf7b53b32a83cbe5777bc72b56b97
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/css-display-3/display-contents-acid-dynamic-1.html
@@ -0,0 +1,58 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>Dynamic changes between display: contents and display: none are handled correctly</title>
+<link rel="help" href="https://drafts.csswg.org/css-display/#box-generation">
+<link rel="author" href="mailto:ecobos@igalia.com" title="Emilio Cobos Álvarez">
+<style>
+html, body {
+ padding: 0;
+ margin: 0;
+}
+iframe {
+ border: 0;
+ width: 100%;
+}
+</style>
+<iframe seamless src="resources/display-contents-acid.html"></iframe>
+<script>
+var getRandomDisplayValue = function() {
+ var DISPLAY_VALUES = [
+ "none",
+ "block",
+ "inline",
+ "inline-block",
+ "flex",
+ "inline-flex",
+ "table",
+ "table-column-group",
+ "grid",
+ "inline-grid",
+ "contents",
+ ];
+
+ return DISPLAY_VALUES[Math.floor(Math.random() * DISPLAY_VALUES.length)];
+}
+
+document.querySelector('iframe').addEventListener('load', function() {
+ var document = this.contentDocument;
+ var window = this.contentWindow;
+ var elements = [];
+
+ document.body.offsetHeight;
+
+ // NOTE: Doing qsa('*') and getComputedStyle is just for the test's
+ // shake, since it's easier to mess it up when getComputedStyle is involved.
+ var all = document.querySelectorAll('*');
+ for (var i = 0; i < all.length; ++i) {
+ if (window.getComputedStyle(all[i]).display === "contents") {
+ all[i].style.display = getRandomDisplayValue();
+ elements.push(all[i]);
+ }
+ }
+
+ document.body.offsetHeight;
+
+ for (var i = 0; i < elements.length; ++i)
+ elements[i].style.display = 'contents';
+});
+</script>

Powered by Google App Engine
This is Rietveld 408576698