diff --git a/app/views/projects/artifacts/_tree_directory.html.haml b/app/views/projects/artifacts/_tree_directory.html.haml
index 5b87d55efd56e4c34596cf97e7635e65352ff736..e4b7979949cbf153d8e41fe3b1dc5e8ba8284235 100644
--- a/app/views/projects/artifacts/_tree_directory.html.haml
+++ b/app/views/projects/artifacts/_tree_directory.html.haml
@@ -1,7 +1,9 @@
-%tr{ class: 'tree-item' }
+- path_to_directory = browse_namespace_project_build_artifacts_path(@project.namespace, @project, @build, path: directory.path)
+
+%tr.tree-item{ 'data-link' => path_to_directory}
   %td.tree-item-file-name
     = tree_icon('folder', '755', directory.name)
     %span.str-truncated
-      = link_to directory.name, browse_namespace_project_build_artifacts_path(@project.namespace, @project, @build, path: directory.path)
+      = link_to directory.name, path_to_directory
   %td
   %td
diff --git a/app/views/projects/artifacts/_tree_file.html.haml b/app/views/projects/artifacts/_tree_file.html.haml
index 92c1648f7263b213780ec15375b2ce2c099825b9..3dfc09cc495b5abffcf9621033f53f70bfcde16b 100644
--- a/app/views/projects/artifacts/_tree_file.html.haml
+++ b/app/views/projects/artifacts/_tree_file.html.haml
@@ -1,11 +1,11 @@
-%tr{ class: 'tree-item' }
+- path_to_file = file_namespace_project_build_artifacts_path(@project.namespace, @project, @build, path: file.path)
+
+%tr.tree-item{ 'data-link' => path_to_file }
   %td.tree-item-file-name
     = tree_icon('file', '664', file.name)
     %span.str-truncated
-      = file.name
+      = link_to file.name, path_to_file
   %td
     = number_to_human_size(file.metadata[:size], precision: 2)
   %td
-    = link_to file_namespace_project_build_artifacts_path(@project.namespace, @project, @build, path: file.path),
-      class: 'btn btn-xs btn-default artifact-download' do
-      = icon('download')
+    = number_to_human_size(file.metadata[:zipped], precision: 2)
diff --git a/app/views/projects/artifacts/browse.html.haml b/app/views/projects/artifacts/browse.html.haml
index 1add7ef6bfb6445ac6a3d16052725d34465ce981..9dc7b2c2e1f412c36157feccdc9a91332d209ffb 100644
--- a/app/views/projects/artifacts/browse.html.haml
+++ b/app/views/projects/artifacts/browse.html.haml
@@ -1,24 +1,28 @@
 - page_title 'Artifacts', "#{@build.name} (##{@build.id})", 'Builds'
 = render 'projects/builds/header_title'
 
-#tree-holder.tree-holder
-  .gray-content-block.top-block.clearfix
-    .pull-right
-      = link_to download_namespace_project_build_artifacts_path(@project.namespace, @project, @build),
-        class: 'btn btn-default' do
-        = icon('download')
-        Download artifacts archive
+.top-block.gray-content-block.clearfix
+  .pull-right
+    = link_to download_namespace_project_build_artifacts_path(@project.namespace, @project, @build),
+      class: 'btn btn-default' do
+      = icon('download')
+      Download artifacts archive
 
-%div.tree-content-holder
-  .table-holder
-    %table.table.tree-table.table-striped
+.tree-holder
+  %div.tree-content-holder
+    %table.table.tree-table
       %thead
         %tr
           %th Name
           %th Size
-          %th Download
+          %th Compressed to
       = render partial: 'tree_directory', collection: @entry.directories(parent: true), as: :directory
       = render partial: 'tree_file', collection: @entry.files, as: :file
 
 - if @entry.empty?
   .center Empty
+
+:javascript
+  $(document).on('click', 'tr[data-link]', function(e) {
+    window.location = this.dataset.link;
+  });
diff --git a/features/project/builds/artifacts.feature b/features/project/builds/artifacts.feature
index 7a7dbb71b18fd9276d00dadc49a99fb992e8e3c7..4f68e44fd77e1c5665caca837bd2ea217c983ad6 100644
--- a/features/project/builds/artifacts.feature
+++ b/features/project/builds/artifacts.feature
@@ -49,5 +49,5 @@ Feature: Project Builds Artifacts
     And recent build has artifacts metadata available
     When I visit recent build summary page
     And I click artifacts browse button
-    And I click download button for a file within build artifacts
+    And I click a link to file within build artifacts
     Then download of a file extracted from build artifacts should start
diff --git a/features/steps/project/builds/artifacts.rb b/features/steps/project/builds/artifacts.rb
index f2c87da47172bf17ade16d5435efbe6d7bb62893..25f2f4e837c7588025471e4a5959279ac02fa36f 100644
--- a/features/steps/project/builds/artifacts.rb
+++ b/features/steps/project/builds/artifacts.rb
@@ -63,8 +63,8 @@ class Spinach::Features::ProjectBuildsArtifacts < Spinach::FeatureSteps
     end
   end
 
-  step 'I click download button for a file within build artifacts' do
-    page.within('.tree-table') { first('.artifact-download').click }
+  step 'I click a link to file within build artifacts' do
+    page.within('.tree-table') { find_link('ci_artifacts.txt').click }
   end
 
   step 'download of a file extracted from build artifacts should start' do