UX: add action links inside a div.

UX: add action links inside a div.

diff --git a/app/jobs/concerns/alert_post_mixin.rb b/app/jobs/concerns/alert_post_mixin.rb
index 9a50793..6f85abf 100644
--- a/app/jobs/concerns/alert_post_mixin.rb
+++ b/app/jobs/concerns/alert_post_mixin.rb
@@ -78,13 +78,15 @@ module AlertPostMixin
       item += " #{description} |"
     end
 
+    actions = []
+
     link = logs_link(alert)
-    item += " [:file_folder:](#{link})" if link.present?
+    actions << "[:file_folder:](#{link})" if link.present?
 
     link = grafana_link(alert)
-    item += " [:bar_chart:](#{link})" if link.present?
+    actions << "[:bar_chart:](#{link})" if link.present?
 
-    item += " |"
+    item += " <div>#{ actions.join(" ") }</div> |" if actions.present?
 
     item
   end
diff --git a/assets/stylesheets/topic-post.scss b/assets/stylesheets/topic-post.scss
index 28cd10b..1db5af5 100644
--- a/assets/stylesheets/topic-post.scss
+++ b/assets/stylesheets/topic-post.scss
@@ -17,17 +17,22 @@
     position: relative;
 
     td:last-child {
+      position: relative;
       width: 20px;
-      max-width: 20px;
-      overflow: hidden;
-      vertical-align: top;
 
-      &:hover {
-        width: auto;
-        max-width: none;
+      > div {
+        background-color: $secondary;
         position: absolute;
+        top: 0;
         right: 0;
-        background-color: $secondary;
+        padding: 3px;
+        max-width: 20px;
+        height: 20px;
+        overflow: hidden;
+      }
+
+      &:hover > div {
+        max-width: none;
       }
     }
   }

GitHub sha: 667c4917