 
           dom.body.prepend floatingConsole
 
+          # Basically, any non-blank value will enable the floating console. In addition, the special
+          # value "invisible" will enable it but then hide it ... this is useful in tests, since
+          # the console output is captured in the markup, but the visible console can have unwanted interactions
+          # (such as obscuring elements that make them unclickable).
+          if consoleAttribute is "invisible"
+            floatingConsole.hide()
+
           messages = floatingConsole.findFirst ".message-container"
 
           floatingConsole.findFirst("[data-action=enable]").attribute "disabled", true


      return

    forceFloating = (dom.body.attribute "data-floating-console") == "true"

    button = (action, icon, label, disabled = false) -> """
        <button data-action="#{action}" class="btn btn-default btn-mini">

          div.hide()

        messages.append div

        # A slightly clumsy way to ensure that the container is scrolled to the bottom.
        _.delay -> messages.element.scrollTop = messages.element.scrollHeight
