--- respondjs.module
+++ respondjs.module
@@ -20,14 +20,8 @@ function respondjs_init() {
       'preprocess' => 0,
     )
   );
-
-  // Show a nasty warning if CSS aggregation is disabled, but only show it on admin pages.
-  if (variable_get('preprocess_css') != 1 && strpos($_GET['q'],'admin') === 0) {
-    drupal_set_message(t('The Respond.js module is enabled, but CSS aggregation is disabled. The script cannot function until <a href="/admin/config/development/performance">CSS aggregation is enabled</a>.'),'error');
-  }
 }
 
-
 /**
  * Implements hook_library().
  */
@@ -54,6 +48,12 @@ function respondjs_requirements($phase) {
       'title' => t('Respond.js script'),
       'value' => t('Enabled'),
     );
+    // If CSS aggregated is not enabled, inform users it will not work
+    if (variable_get('preprocess_css') != 1) {
+      $requirements['respondjs']['value'] = t('Respond.js will not work with CSS aggregation disabled.');
+      $requirements['respondjs']['description'] = t('The Respond.js module is enabled, but CSS aggregation is disabled. The script cannot function until <a href="@url">CSS agregation is enabled</a>.', array('@url' => url('admin/config/development/performance')));
+      $requirements['respondjs']['severity'] = REQUIREMENT_ERROR;
+    }
     // If Libraries API is enabled but respond.js is not found within the sites/all/libraries folder
     // report a warning. The module will fall back to its included copy so this isn't a showstopper.
     if (function_exists('libraries_get_path') && strpos($library_path,'libraries/respondjs') === FALSE) {
