diff --git a/compact_forms.admin.inc b/compact_forms.admin.inc
index 41f941d..ef15f18 100644
--- a/compact_forms.admin.inc
+++ b/compact_forms.admin.inc
@@ -17,6 +17,12 @@ function compact_forms_admin_form($form, &$form_state) {
     '#default_value' => variable_get('compact_forms_ids', 'user-login-form'),
     '#description' => t('Enter the CSS IDs of the forms to display compact. One per line.'),
   );
+  $form['compact_forms_select'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Compact select list elements'),
+    '#description' => t('Replaces default "Any" option with field label.'),
+    '#default_value' => variable_get('compact_forms_select', 1),
+  );
   $form['compact_forms_descriptions'] = array(
     '#type' => 'checkbox',
     '#title' => t('Hide field descriptions'),
diff --git a/compact_forms.module b/compact_forms.module
index 1a2e476..15a887f 100644
--- a/compact_forms.module
+++ b/compact_forms.module
@@ -156,3 +156,56 @@ function _compact_forms_include_js($css_ids) {
   drupal_add_js($settings, 'setting');
 }
 
+/**
+ * Implements hook_field_attach_form()
+ *
+ * Replaces select list elements' #empty_option with element label.
+ */
+function compact_forms_field_attach_form($entity_type, $entity, &$form, &$form_state, $langcode) {
+  if (variable_get('compact_forms_select', 1)) {
+    foreach (element_children($form) as $name) {
+      if ($form[$name]['#type'] == 'container') {
+        // Determine form element language.
+        $language = $form[$name]['#language'];
+        // Replace empty option.
+        if ($form[$name][$language]['#type'] == 'select') {
+          $empty_option = $form[$name][$language]['#title'];
+          // If the element is required, append asterisk.
+          if ($form[$name][$language]['#required']) {
+            $empty_option .= ' *';
+          }
+          $form[$name][$language]['#options']['_none'] = $empty_option;
+          unset($form[$name][$language]['#title']);
+        }
+      }
+    }
+  }
+}
+
+/**
+ * Implements hook_form_views_exposed_form_alter()
+ *
+ * Replaces select list elements' #empty_option with element label (views exposed filters).
+ */
+function compact_forms_form_views_exposed_form_alter(&$form, &$form_state, $form_id) {
+  if (variable_get('compact_forms_select', 1)) {
+    foreach ($form['#info'] as $key => &$filter) {
+      $value = $filter['value'];
+      $type = isset($form[$value]['#type']) ? $form[$value]['#type']: NULL;
+      // Replace empty option for single select lists.
+      if ($type == 'select' && isset($filter['label'])) {
+        $form[$value]['#options']['All'] = $filter['label'];
+        unset($filter['label']);
+      }
+      // Replace empty option for fields with multiple select lists.
+      // E.g., date field with "to" and "from" elements.
+      elseif ($type == NULL) {
+        foreach ($form[$value] as $key => &$filter) {
+          $type = isset($filter['#type']) ? $filter['#type']: '';
+          $form[$filter['#title']]['#options']['All'] = $filter['#title'];
+          unset($filter['#title']);
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
