     @$dropdown.$list.$no_results = $("<li />", class: "chosen-noresults")
     @$dropdown.$list.suggestion = null
 
-  getCSSProperties: (node, properties)->
-    attrs = {}
-    return attrs if Chosen.is_crappy_browser(8)
-
-    sheets = document.styleSheets
-    node.matches = node.matches or node.webkitMatchesSelector or node.mozMatchesSelector or node.msMatchesSelector or node.oMatchesSelector
-    matches = []
-
-    for i of sheets
-      try
-        rules = sheets[i].rules or sheets[i].cssRules
-      catch
-        continue
-
-      for r of rules
-        try
-          if node.matches(rules[r].selectorText)
-            matches.push rules[r].cssText
-        catch
-          continue
-
-    for p in properties
-      for m in matches
-        match = m.match(new RegExp("(?:\\s|;|^)#{p}:\\s*([^;]+)"))
-
-        if match
-          attrs[p] = match[1]
-
-    attrs
+  getCSSProperties: (node, properties) ->
+    Chosen.getCSSProperties(arguments...)
 
   bind_events: ->
     if @target.id.length


    return @

  @is_ios: ->
    /iPad|iPhone|iPod/.test(navigator.userAgent) and not window.MSStream



    container_props =
      class: container_classes.join ' '
      css: if @width then { width: @width } else Chosen.getCSSProperties(@target, ["width", "min-width", "max-width"])

    @$target.addClass("chosen")
    @$target.addClass("ios") if is_ios

    attrs = Chosen.getCSSProperties(@target, ["height"])

    container_props.css['min-height'] = attrs.height if attrs.height
    container_props.title = @target.title if @target.title.length
