diff --git a/src/librustdoc/html/static/rustdoc.css b/src/librustdoc/html/static/rustdoc.css
index 6d581108836ef..9c5e3e8bfb2c5 100644
--- a/src/librustdoc/html/static/rustdoc.css
+++ b/src/librustdoc/html/static/rustdoc.css
@@ -780,12 +780,12 @@ a {
float: left;
}
-tr.result span.primitive::after {
+.result-name span.primitive::after {
content: ' (primitive type)';
font-style: italic;
}
-tr.result span.keyword::after {
+.result-name span.keyword::after {
content: ' (keyword)';
font-style: italic;
}
diff --git a/src/test/rustdoc-gui/search-result-keyword.goml b/src/test/rustdoc-gui/search-result-keyword.goml
new file mode 100644
index 0000000000000..23552c8ce89be
--- /dev/null
+++ b/src/test/rustdoc-gui/search-result-keyword.goml
@@ -0,0 +1,11 @@
+goto: file://|DOC_PATH|/test_docs/index.html
+write: (".search-input", "CookieMonster")
+// Waiting for the search results to appear...
+wait-for: "#titles"
+// Note: The two next assert commands could be merged as one but readability would be
+// less good.
+//
+// Checking that the CSS is displaying " (keyword)"...
+assert: (".result-name span.keyword::after", {"content": '" (keyword)"'})
+// ... in italic.
+assert: (".result-name span.keyword::after", {"font-style": "italic"})
diff --git a/src/test/rustdoc-gui/src/lib.rs b/src/test/rustdoc-gui/src/lib.rs
index eeba3e3f9070d..7b247a19b8e3f 100644
--- a/src/test/rustdoc-gui/src/lib.rs
+++ b/src/test/rustdoc-gui/src/lib.rs
@@ -2,6 +2,7 @@
//! documentation generated so we can test each different features.
#![crate_name = "test_docs"]
+#![feature(doc_keyword)]
use std::fmt;
@@ -91,3 +92,6 @@ pub fn check_list_code_block() {}
pub enum AnEnum {
WithVariants { and: usize, sub: usize, variants: usize },
}
+
+#[doc(keyword = "CookieMonster")]
+pub mod keyword {}