CSS擅長於樣式,佈局和視覺演示,並充滿顏色,尺寸和動畫。但是您知道它也可以在網頁上巧妙地控制音頻播放嗎?
本文揭示了一種聰明的技術 - 比真正的黑客更精確地應用了HTML和CSS的精確應用,儘管肯定是在一個方面接壤。但是,對於生產環境,強烈建議使用本機音頻元素和/或JavaScript進行音頻控制。
技術
CSS驅動的聲音播放存在幾種方法,但是核心原理保持一致:將音頻文件嵌入頁面中的隱藏元素並揭示其觸發播放。這是一個例子:
<style> embed { display: none; } button:active embed { display: block; } </style> <button>播放聲音</button> <embed src="path-to-audio-file.mp3"></embed>
這利用了<embed></embed>
標籤。這<object></object>
標籤提供類似的功能:
<object data="path-to-audio-file.mp3"></object>
重要考慮因素:
先前的代碼鋼鋼琴項目證明了這一技術的有效性。但是,最近的瀏覽器更新引入了局限性:
安全限制:使用
<embed></embed>
或者<object></object>
將音頻文件對其進行更嚴格的安全檢查。 CORS策略必須將音頻文件駐留在與網頁相同的協議和域上。基本64編碼不會繞過這一點。可能需要在瀏覽器設置中明確啟用自動播放。單次播放:與以前的瀏覽器行為不同,現在聽起來通常只播放一次。這大大限制了該技術的適用性。
儘管服務器端控件可以減輕CORS問題,但自動播放限制仍然取決於用戶,並且超出了我們的控制。
為什麼有效
基本機制在規格中詳細介紹<embed></embed>
和<object></object>
標籤:瀏覽器處理並在元素變為“潛在活動”或改變渲染狀態的元素上渲染嵌入式音頻。雖然從技術上講不是黑客攻擊,但存在瀏覽器不一致之處。
瀏覽器兼容性
跨瀏覽器的支持不一致:
Opera和Chrome:出色的兼容性。
基於鉻的瀏覽器:支持各不相同; MacOS上的Edge可靠地工作,而Brave可能需要最新版本。
Safari,Internet Explorer,Edge(Windows):通常不支持。
Firefox:在頁面加載時立即播放所有聲音,然後由於有關用戶互動的安全警告而阻止隨後的播放。
這種CSS技巧雖然娛樂,但最好將其視為“在家不要嘗試此”技術,除非,除非,除非您是渴望探索其怪癖的軟件開發人員。
以上是與CSS一起播放聲音的詳細內容。更多資訊請關注PHP中文網其他相關文章!

我最近找到了一種動態更新任何產品圖像的顏色的解決方案。因此,只有一種產品之一,我們可以以不同的方式對其進行著色以顯示

在本週的綜述中,燈塔在第三方腳本上闡明了燈光,不安全的資源將在安全站點上被阻止,許多國家連接速度

有很多分析平台可幫助您跟踪網站上的訪問者和使用數據。也許最著名的是Google Analytics(廣泛使用)

該文檔負責人可能不是網站上最迷人的部分,但是其中所處的內容對於您的網站的成功也一樣重要

當您看到一些稱為super()的JavaScript時,在子類中,您會使用super()調用其父母的構造函數和超級。訪問它


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3漢化版
中文版,非常好用

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),