Skip to content

Commit 7916821

Browse files
committed
Rename preview-covers to BEM single-class selectors to fix specificity
Replace two-part `.searchResultItem .preview-covers` selectors with single-class `.search-result-item__preview-covers` to reduce specificity and resolve stylelint selector-max-specificity violations.
1 parent 62442c1 commit 7916821

2 files changed

Lines changed: 18 additions & 18 deletions

File tree

openlibrary/macros/SearchResultsWork.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,10 +175,10 @@ <h3 itemprop="name" class="booktitle">
175175
</ol-read-more>
176176

177177
$if doc.get('ia') and len(doc.get('ia')) > 1:
178-
$ blur_preview = "preview-covers--blur" if blur else ""
178+
$ blur_preview = "search-result-item__preview-covers--blur" if blur else ""
179179

180-
<div class="preview-covers-container">
181-
<span class="preview-covers $blur_preview">
180+
<div class="search-result-item__preview-covers-container">
181+
<span class="search-result-item__preview-covers $blur_preview">
182182
$for x, i in enumerate(doc.get('ia')[1:6]):
183183
<a href="$(book_url)?edition=ia:$(urlquote(i))">
184184
<img width="35" height="53" loading="lazy" src="//archive.org/services/img/$i" alt="$_('Cover of edition %(id)s', id=i)">

static/css/components/search-result-item.css

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -123,18 +123,18 @@
123123
color: var(--black);
124124
}
125125

126-
.searchResultItem .preview-covers {
126+
.search-result-item__preview-covers {
127127
display: flex;
128128
align-items: center;
129129
}
130130

131-
.searchResultItem .preview-covers img {
131+
.search-result-item__preview-covers img {
132132
border-radius: var(--border-radius-thumbnail);
133133
border: 2px solid var(--grey-fafafa);
134134
opacity: 1;
135135
}
136136

137-
.searchResultItem .preview-covers--blur img {
137+
.search-result-item__preview-covers--blur img {
138138
filter: blur(2px);
139139
}
140140

@@ -189,41 +189,41 @@
189189
font-style: normal;
190190
}
191191

192-
.searchResultItem .preview-covers-container {
192+
.search-result-item__preview-covers-container {
193193
display: flex;
194194
align-items: center;
195195
gap: 10px;
196196
margin-top: 10px;
197197
margin-bottom: 5px;
198198
}
199199

200-
.searchResultItem .preview-covers a {
200+
.search-result-item__preview-covers > * {
201201
position: relative;
202202
display: inline-block;
203203
flex-shrink: 0;
204204
}
205205

206-
.searchResultItem .preview-covers a:nth-child(n + 2) {
206+
.search-result-item__preview-covers :nth-child(n + 2) {
207207
margin-left: -8px;
208208
}
209209

210-
.searchResultItem .preview-covers a:nth-child(1) {
210+
.search-result-item__preview-covers :nth-child(1) {
211211
z-index: var(--z-index-level-5);
212212
}
213213

214-
.searchResultItem .preview-covers a:nth-child(2) {
214+
.search-result-item__preview-covers :nth-child(2) {
215215
z-index: var(--z-index-level-4);
216216
}
217217

218-
.searchResultItem .preview-covers a:nth-child(3) {
218+
.search-result-item__preview-covers :nth-child(3) {
219219
z-index: var(--z-index-level-3);
220220
}
221221

222-
.searchResultItem .preview-covers a:nth-child(4) {
222+
.search-result-item__preview-covers :nth-child(4) {
223223
z-index: var(--z-index-level-2);
224224
}
225225

226-
.searchResultItem .preview-covers a:nth-child(5) {
226+
.search-result-item__preview-covers :nth-child(5) {
227227
z-index: var(--z-index-level-1);
228228
}
229229

@@ -277,20 +277,20 @@
277277
}
278278

279279
@media (hover: hover) and (pointer: fine) {
280-
.searchResultItem .preview-covers a:hover {
280+
.search-result-item__preview-covers :hover {
281281
z-index: var(--z-index-level-5);
282282
}
283283

284-
.searchResultItem .preview-covers a:hover img {
284+
.search-result-item__preview-covers :hover :where(img) {
285285
border-color: var(--primary-blue);
286286
}
287287
}
288288

289-
.searchResultItem .preview-covers a:active img {
289+
.search-result-item__preview-covers :active :where(img) {
290290
transform: scale(0.97);
291291
}
292292

293-
.searchResultItem .preview-covers a:focus-visible {
293+
.search-result-item__preview-covers :focus-visible {
294294
z-index: var(--z-index-level-5);
295295
box-shadow: var(--box-shadow-focus);
296296
border-radius: var(--border-radius-thumbnail);

0 commit comments

Comments
 (0)