diff --git a/core/modules/views_ui/css/views_ui.admin.theme.css b/core/modules/views_ui/css/views_ui.admin.theme.css
index a4ebe73..a9b1eab 100644
--- a/core/modules/views_ui/css/views_ui.admin.theme.css
+++ b/core/modules/views_ui/css/views_ui.admin.theme.css
@@ -820,7 +820,7 @@ td.group-title {
   border-top:  1px solid #ccc;
 }
 
-.views-filterable-options .filterable-option:nth-of-type(even) .form-type-checkbox {
+.views-filterable-options .filterable-option.odd .form-type-checkbox {
   background-color: #f3f4ee;
 }
 
diff --git a/core/modules/views_ui/js/views-admin.js b/core/modules/views_ui/js/views-admin.js
index 5310062..bdfea7c 100644
--- a/core/modules/views_ui/js/views-admin.js
+++ b/core/modules/views_ui/js/views-admin.js
@@ -358,13 +358,16 @@
      * Keyup handler for the search box that hides or shows the relevant options.
      */
     handleKeyup: function (event) {
-      var found, i, j, option, search, words, wordsLength;
+      var found, i, j, option, zebraClass;
 
       // Determine the user's search query. The search text has been converted to
       // lowercase.
-      search = this.$searchBox.val().toLowerCase();
-      words = search.split(' ');
-      wordsLength = words.length;
+      var search = this.$searchBox.val().toLowerCase();
+      var words = search.split(' ');
+      var wordsLength = words.length;
+
+      // Start the counter for restriping rows.
+      var zebraCounter = 0;
 
       // Search through the search texts in the form for matching text.
       var length = this.options.length;
@@ -380,9 +383,12 @@
           }
         }
         if (found) {
+          zebraClass = (zebraCounter % 2) ? 'odd' : 'even';
           // Show the checkbox row, and restripe it.
-          option.$div.show();
           option.$div.removeClass('even odd');
+          option.$div.addClass(zebraClass);
+          option.$div.show();
+          zebraCounter++;
         }
         else {
           // The search string wasn't found; hide this item.
