Chrome 55ではこのダウンロードボタンに<video>
タグが付いていますが、Chrome 54にはありません:
Chrome 55でダウンロードボタンが見えないようにするには、どうすればこれを削除できますか。
この動画を私のWebページに埋め込むために<video>
タグを使用しました。そのため、このダウンロードオプションを削除するためのコードが必要です。
これが私の現在のコードです:
<video width="512" height="380" controls>
<source data-src="mov_bbb.ogg" type="video/mp4">
</video>
これが解決策です( この投稿から )
video::-internal-media-controls-download-button {
display:none;
}
video::-webkit-media-controls-Enclosure {
overflow:hidden;
}
video::-webkit-media-controls-panel {
width: calc(100% + 30px); /* Adjust as needed */
}
アップデート2:@Remoによる新しいソリューション
<video width="512" height="380" controls controlsList="nodownload">
<source data-src="mov_bbb.ogg" type="video/mp4">
</video>
最後の回答がここに掲載されて以来、Googleは新機能を追加しました。次に示すように、controlList
属性を追加できます。
<video width="512" height="380" controls controlsList="nodownload">
<source data-src="mov_bbb.ogg" type="video/mp4">
</video>
ここでcontrollist属性のすべてのオプションを見つけることができます。
https://developers.google.com/web/updates/2017/03/chrome-58-media-updates#controlslist
Chrome 58では、表示したくないコントロールを削除するために controlsList を使用できるようになりました。これは<audio>
タグと<video>
タグの両方に使用できます。
コントロール内のダウンロードボタンを削除したい場合は、次の操作を行います。
<audio controls controlsList="nodownload">
HTML5オーディオが使用されている場合、これはChromeのダウンロードボタンを隠すことができます。
#aPlayer > audio { width: 100% }
/* Chrome 29+ */
@media screen and (-webkit-min-device-pixel-ratio:0)
and (min-resolution:.001dpcm) {
/* HIDE DOWNLOAD AUDIO BUTTON */
#aPlayer {
overflow: hidden;width: 390px;
}
#aPlayer > audio {
width: 420px;
}
}
/* Chrome 22-28 */
@media screen and(-webkit-min-device-pixel-ratio:0) {
#aPlayer {
overflow: hidden;width: 390px;
}
#aPlayer > audio { width: 420px; }
}
<div id="aPlayer">
<audio autoplay="autoplay" controls="controls">
<source src="http://www.stephaniequinn.com/Music/Commercial%20DEMO%20-%2012.mp3" type="audio/mpeg" />
</audio>
</div>
ちょっと私はすべてのケースで動作するはずです恒久的な解決策を見つけました!
通常のWeb開発用
<script type="text/javascript">
$("video").each(function(){jQuery(this).append('controlsList="nodownload"')});
</script>
事前ロードがfalseのHTML5ビデオ
$( document ).ready(function() {
$("video").each(function(){
$(this).attr('controlsList','nodownload');
$(this).load();
});
});
$は信じられない? - >デバッグモード
<script type="text/javascript">
jQuery("video").each(function(){jQuery(this).append('controlsList="nodownload"')});
</script>
事前ロードがfalseのHTML5ビデオ
jQuery( document ).ready(function() {
jQuery("video").each(function(){
jQuery(this).attr('controlsList','nodownload');
jQuery(this).load();
});
});
それはあなたを助けたかどうか私に知らせて!
現在のChromeバージョン(56)に関しては、まだそれを削除することはできません。他の投稿で提供されている解決策は、ビデオの一部をオーバーフローさせることにつながります。
私は別の解決策を見つけました - あなたはこのボタンを使うことによってダウンロードボタンに重なって単にそれをカバーするために前のボタンを作ることができます:
video::-webkit-media-controls-fullscreen-button {
margin-right: -48px;
z-index: 10;
position: relative;
background: #fafafa;
background-image: url(https://image.flaticon.com/icons/svg/151/151926.svg);
background-size: 35%;
background-position: 50% 50%;
background-repeat: no-repeat;
}
例: https://jsfiddle.net/dk4q6hh2/
PSあなたはアイコンをカスタマイズしたいと思うかもしれません。
「ダウンロード」ボタンを利用する最良の方法は、Videojs( http://docs.videojs.com/ /)やMediaElement.js( http://www.mediaelementjs)などのJavaScriptプレーヤーを使用することです。 .com/ )
彼らは原則としてダウンロードボタンをデフォルトで持っていないし、さらにあなたがプレーヤーの目に見えるコントロールボタンをカスタマイズすることを可能にします。