diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css
index 1ba8d118b7644..31bc8c9129df3 100644
--- a/src/librustdoc/html/static/css/rustdoc.css
+++ b/src/librustdoc/html/static/css/rustdoc.css
@@ -1959,6 +1959,13 @@ in storage.js
overflow-x: hidden;
}
+.scraped-example .example-wrap .rust span.highlight {
+ background: var(--scrape-example-code-line-highlight);
+}
+.scraped-example .example-wrap .rust span.highlight.focus {
+ background: var(--scrape-example-code-line-highlight-focus);
+}
+
.more-examples-toggle {
max-width: calc(100% + 25px);
margin-top: 10px;
diff --git a/src/librustdoc/html/static/css/themes/ayu.css b/src/librustdoc/html/static/css/themes/ayu.css
index 7d7bdfb92ce2d..3d0025054221c 100644
--- a/src/librustdoc/html/static/css/themes/ayu.css
+++ b/src/librustdoc/html/static/css/themes/ayu.css
@@ -91,6 +91,8 @@ Original by Dempfi (https://github.com/dempfi/ayu)
--codeblock-link-background: #333;
--scrape-example-toggle-line-background: #999;
--scrape-example-toggle-line-hover-background: #c5c5c5;
+ --scrape-example-code-line-highlight: rgb(91, 59, 1);
+ --scrape-example-code-line-highlight-focus: rgb(124, 75, 15);
}
h1, h2, h3, h4 {
@@ -206,12 +208,6 @@ above the `@media (max-width: 700px)` rules due to a bug in the css checker */
border-color: white;
color: white;
}
-.scraped-example .example-wrap .rust span.highlight {
- background: rgb(91, 59, 1);
-}
-.scraped-example .example-wrap .rust span.highlight.focus {
- background: rgb(124, 75, 15);
-}
.scraped-example:not(.expanded) .code-wrapper::before {
background: linear-gradient(to bottom, rgba(15, 20, 25, 1), rgba(15, 20, 25, 0));
}
diff --git a/src/librustdoc/html/static/css/themes/dark.css b/src/librustdoc/html/static/css/themes/dark.css
index 6dd15d2e1bbaa..b88eeedddf3ce 100644
--- a/src/librustdoc/html/static/css/themes/dark.css
+++ b/src/librustdoc/html/static/css/themes/dark.css
@@ -86,6 +86,8 @@
--codeblock-link-background: #333;
--scrape-example-toggle-line-background: #999;
--scrape-example-toggle-line-hover-background: #c5c5c5;
+ --scrape-example-code-line-highlight: rgb(91, 59, 1);
+ --scrape-example-code-line-highlight-focus: rgb(124, 75, 15);
}
#search-tabs > button:not(.selected) {
@@ -106,12 +108,6 @@
border-color: white;
color: white;
}
-.scraped-example .example-wrap .rust span.highlight {
- background: rgb(91, 59, 1);
-}
-.scraped-example .example-wrap .rust span.highlight.focus {
- background: rgb(124, 75, 15);
-}
.scraped-example:not(.expanded) .code-wrapper::before {
background: linear-gradient(to bottom, rgba(53, 53, 53, 1), rgba(53, 53, 53, 0));
}
diff --git a/src/librustdoc/html/static/css/themes/light.css b/src/librustdoc/html/static/css/themes/light.css
index 804e20d0d44e9..fff59d4e9c98c 100644
--- a/src/librustdoc/html/static/css/themes/light.css
+++ b/src/librustdoc/html/static/css/themes/light.css
@@ -83,6 +83,8 @@
--codeblock-link-background: #eee;
--scrape-example-toggle-line-background: #ccc;
--scrape-example-toggle-line-hover-background: #999;
+ --scrape-example-code-line-highlight: #fcffd6;
+ --scrape-example-code-line-highlight-focus: #f6fdb0;
}
#search-tabs > button:not(.selected) {
@@ -103,12 +105,6 @@
border-color: black;
color: black;
}
-.scraped-example .example-wrap .rust span.highlight {
- background: #fcffd6;
-}
-.scraped-example .example-wrap .rust span.highlight.focus {
- background: #f6fdb0;
-}
.scraped-example:not(.expanded) .code-wrapper::before {
background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}
diff --git a/src/test/rustdoc-gui/scrape-examples-color.goml b/src/test/rustdoc-gui/scrape-examples-color.goml
new file mode 100644
index 0000000000000..5175891e7ba69
--- /dev/null
+++ b/src/test/rustdoc-gui/scrape-examples-color.goml
@@ -0,0 +1,34 @@
+// Check that scrape example code blocks have the expected colors.
+goto: "file://" + |DOC_PATH| + "/scrape_examples/fn.test_many.html"
+
+define-function: (
+ "check-colors",
+ (theme, highlight, highlight_focus),
+ [
+ ("local-storage", { "rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false", }),
+ ("reload"),
+ ("wait-for", ".more-examples-toggle"),
+ ("assert-css", (".scraped-example .example-wrap .rust span.highlight:not(.focus)", {
+ "background-color": |highlight|,
+ }, ALL)),
+ ("assert-css", (".scraped-example .example-wrap .rust span.highlight.focus", {
+ "background-color": |highlight_focus|,
+ }, ALL)),
+ ]
+)
+
+call-function: ("check-colors", {
+ "theme": "ayu",
+ "highlight": "rgb(91, 59, 1)",
+ "highlight_focus": "rgb(124, 75, 15)",
+})
+call-function: ("check-colors", {
+ "theme": "dark",
+ "highlight": "rgb(91, 59, 1)",
+ "highlight_focus": "rgb(124, 75, 15)",
+})
+call-function: ("check-colors", {
+ "theme": "light",
+ "highlight": "rgb(252, 255, 214)",
+ "highlight_focus": "rgb(246, 253, 176)",
+})