diff --git a/app/assets/javascripts/vue_pipelines_index/pipeline_actions.js.es6 b/app/assets/javascripts/vue_pipelines_index/pipeline_actions.js.es6
index 8106934e86486404b5c6de3baa38b577128e1108..54e8f977a47d4230768c5704b22d577e4df6fbb6 100644
--- a/app/assets/javascripts/vue_pipelines_index/pipeline_actions.js.es6
+++ b/app/assets/javascripts/vue_pipelines_index/pipeline_actions.js.es6
@@ -62,6 +62,7 @@
                 <li v-for='artifact in pipeline.details.artifacts'>
                   <a
                     rel="nofollow"
+                    download
                     :href='artifact.path'
                   >
                     <i class="fa fa-download" aria-hidden="true"></i>
diff --git a/app/views/projects/buttons/_download.html.haml b/app/views/projects/buttons/_download.html.haml
index 762ff34a9eccdf03f81821a0a51158a03a1eef06..b560ed21f1d3fc36c1f4e1cb66f8701ce29bd6b4 100644
--- a/app/views/projects/buttons/_download.html.haml
+++ b/app/views/projects/buttons/_download.html.haml
@@ -8,19 +8,19 @@
     %ul.dropdown-menu.dropdown-menu-align-right{ role: 'menu' }
       %li.dropdown-header Source code
       %li
-        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'zip'), rel: 'nofollow' do
+        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'zip'), rel: 'nofollow', download: '' do
           %i.fa.fa-download
           %span Download zip
       %li
-        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar.gz'), rel: 'nofollow' do
+        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar.gz'), rel: 'nofollow', download: '' do
           %i.fa.fa-download
           %span Download tar.gz
       %li
-        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar.bz2'), rel: 'nofollow' do
+        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar.bz2'), rel: 'nofollow', download: '' do
           %i.fa.fa-download
           %span Download tar.bz2
       %li
-        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar'), rel: 'nofollow' do
+        = link_to archive_namespace_project_repository_path(project.namespace, project, ref: ref, format: 'tar'), rel: 'nofollow', download: '' do
           %i.fa.fa-download
           %span Download tar
 
@@ -36,6 +36,6 @@
             %li.dropdown-header Previous Artifacts
           - artifacts.each do |job|
             %li
-              = link_to latest_succeeded_namespace_project_artifacts_path(project.namespace, project, "#{ref}/download", job: job.name), rel: 'nofollow' do
+              = link_to latest_succeeded_namespace_project_artifacts_path(project.namespace, project, "#{ref}/download", job: job.name), rel: 'nofollow', download: '' do
                 %i.fa.fa-download
                 %span Download '#{job.name}'
diff --git a/app/views/projects/ci/pipelines/_pipeline.html.haml b/app/views/projects/ci/pipelines/_pipeline.html.haml
index f852f2e3fd7bad2774b3c22bc330276bc14263f3..3475fa5f960908eec2c60a25cff78cdf6386f15b 100644
--- a/app/views/projects/ci/pipelines/_pipeline.html.haml
+++ b/app/views/projects/ci/pipelines/_pipeline.html.haml
@@ -78,7 +78,7 @@
               %ul.dropdown-menu.dropdown-menu-align-right
                 - artifacts.each do |build|
                   %li
-                    = link_to download_namespace_project_build_artifacts_path(pipeline.project.namespace, pipeline.project, build), rel: 'nofollow' do
+                    = link_to download_namespace_project_build_artifacts_path(pipeline.project.namespace, pipeline.project, build), rel: 'nofollow', download: '' do
                       = icon("download")
                       %span Download '#{build.name}' artifacts
 
diff --git a/changelogs/unreleased/26957-tanuki-anim-hang.yml b/changelogs/unreleased/26957-tanuki-anim-hang.yml
new file mode 100644
index 0000000000000000000000000000000000000000..c7b4b9ebdfd697bf52fdea1af5704b523f961eea
--- /dev/null
+++ b/changelogs/unreleased/26957-tanuki-anim-hang.yml
@@ -0,0 +1,4 @@
+---
+title: don't animate logo when downloading files
+merge_request:
+author:
diff --git a/spec/features/projects/main/download_buttons_spec.rb b/spec/features/projects/main/download_buttons_spec.rb
index 227ccf9459c3e5728ca47bba445b3bceea13f13c..02198ff3e419f0058c796886d3c6dbabb2a65067 100644
--- a/spec/features/projects/main/download_buttons_spec.rb
+++ b/spec/features/projects/main/download_buttons_spec.rb
@@ -39,6 +39,13 @@ feature 'Download buttons in project main page', feature: true do
 
         expect(page).to have_link "Download '#{build.name}'", href: href
       end
+
+      scenario 'download links have download attribute' do
+        expect(page).to have_selector('a', text: 'Download')
+        page.all('a', text: 'Download').each do |link|
+          expect(link[:download]).to eq ''
+        end
+      end
     end
   end
 end
diff --git a/spec/features/projects/pipelines/pipelines_spec.rb b/spec/features/projects/pipelines/pipelines_spec.rb
index 6555b2fc6c1971993a386747b39dcbd5e354dfc8..b56be49926438c24583d151ce1f0dc7893c3eea6 100644
--- a/spec/features/projects/pipelines/pipelines_spec.rb
+++ b/spec/features/projects/pipelines/pipelines_spec.rb
@@ -218,6 +218,14 @@ describe 'Pipelines', :feature, :js do
 
             expect(page).to have_link(with_artifacts.name)
           end
+
+          it 'has download attribute on download links' do
+            find('.js-pipeline-dropdown-download').click
+            expect(page).to have_selector('a', text: 'Download')
+            page.all('.build-artifacts a', text: 'Download').each do |link|
+              expect(link[:download]).to eq ''
+            end
+          end
         end
 
         context 'with artifacts expired' do