Skip to content

Commit 7390721

Browse files
committed
Reduced 10 level deep nesting of CSS rules. Instead, using the simpler depth-0,-1,-2,etc for adding padding to the result when nested.
Greatly simplifies complexity of expressions and reduces (hopefully) rendering time. From https://developers.google.com/speed/docs/best-practices/rendering#UseEfficientCSSSelectors Descendant selectors are inefficient because, for each element that matches the key, the browser must also traverse up the DOM tree, evaluating every ancestor element until it finds a match or reaches the root element.
1 parent 774a0d7 commit 7390721

1 file changed

Lines changed: 10 additions & 8 deletions

File tree

select2.css

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -326,14 +326,6 @@ Version: @@ver@@ Timestamp: @@timestamp@@
326326
padding-left: 0;
327327
}
328328

329-
.select2-results ul.select2-result-sub > li .select2-result-label { padding-left: 20px }
330-
.select2-results ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 40px }
331-
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 60px }
332-
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 80px }
333-
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 100px }
334-
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 110px }
335-
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 120px }
336-
337329
.select2-results li {
338330
list-style: none;
339331
display: list-item;
@@ -358,6 +350,16 @@ Version: @@ver@@ Timestamp: @@timestamp@@
358350
user-select: none;
359351
}
360352

353+
.select2-results-dept-0 .select2-result-label { padding-left: 20px }
354+
.select2-results-dept-1 .select2-result-label { padding-left: 40px }
355+
.select2-results-dept-2 .select2-result-label { padding-left: 60px }
356+
.select2-results-dept-3 .select2-result-label { padding-left: 80px }
357+
.select2-results-dept-4 .select2-result-label { padding-left: 100px }
358+
.select2-results-dept-5 .select2-result-label { padding-left: 110px }
359+
.select2-results-dept-6 .select2-result-label { padding-left: 120px }
360+
361+
362+
361363
.select2-results .select2-highlighted {
362364
background: #3875d7;
363365
color: #fff;

0 commit comments

Comments
 (0)