After some research I have finally found your problem.
<a>‘s download attribute:
If the HTTP header
Content-Disposition: is present and gives a different filename than this attribute, the HTTP header has priority over this attribute.
If this attribute is present and
Content-Disposition: is set to inline, Firefox gives priority toContent-Disposition, like for the filename case, while Chrome gives priority to the download attribute.
Source
HTTP-Header Content-Disposition