這里有一個有趣的解決方案,沒有人提到過。
事實:
您無法修改頁面的HTML - 沒問題!
您可以修改CSS文件,但開發(fā)人員可能稍后再次修改它們并刪除您所做的任何更改 - 不必擔(dān)心。
您不能/不想使用Javascript和JQuery - 對我來說沒問題。
您可以在服務(wù)器上添加更多文件 - 太棒了!
讓我們進行一些.htacess黑客攻擊,以求取樂和利益!
Options +FollowSymlinks RewriteEngine on RewriteBase / RewriteRule ^(.*?)css3.css(.*?) $1hackedCSS3.php$2 [L]
結(jié)果:每次請求時,hackedCSS3.php會被靜默地提供,而不是css3.css。
參考:http://httpd.apache.org/docs/2.2/howto/htaccess.html
<?php // 發(fā)送正確的頭信息! header("Content-type: text/css; charset: UTF-8"); // 輸出css3.css文件 echo file_get_contents("css3.css"); ?> // 在這里添加您的CSS,使用任何有趣的!important或覆蓋技巧(即:特定性) div { ... }
額外獎勵:
您可以將此解決方案擴展到此一個.php
文件中的所有三個.css
文件(但僅提供css3.css,并使用聰明的正則表達式刪除/修改那些開發(fā)人員的CSS,而不觸及任何文件。這些可能性令人心動。
.htaccess文件應(yīng)位于網(wǎng)站的文檔根目錄中。這是www.example.com/index.html加載index.html的地方。
它可以位于您在.htaccess文件中指定的任何目錄中。文檔根目錄也可以。更改
RewriteRule ^(.*?)css3.css(.*?) $1hackedCSS3.php$2 [L]
為
RewriteRule ^(.*?)css3.css(.*?) /folders/you/want/hackedCSS3.php$2 [L]
不需要。將該部分的CSS代碼視為.css文件處理。您不需要<style>
標(biāo)簽。
除了使用大多數(shù)答案建議使用的!important
之外,這是一個關(guān)于CSS特異性的問題
可以用4列優(yōu)先級來表示:
/*演示目的*/ body {margin: 0;padding: 0} div,article {min-height: 200px;height: 100%;width: 100%} /*CSS特異性*/ /* 特異性:0/1/0/0 */ #id { background-color: green } /* 特異性:0/0/1/0 */ .class { background-color: yellow } /* 特異性:0/0/0/1 */ section { background-color: blue } /* ------------ 覆蓋內(nèi)聯(lián)樣式 ----------- */ /*要覆蓋內(nèi)聯(lián)樣式,我們現(xiàn)在使用!important*/ /* 特異性 0/0/1/0 */ .inline { background-color: purple !IMPORTANT /*將變?yōu)樽仙?最終結(jié)果*/ }
<article> <div id="id"> <div class="class"> <section> <div class="inline" style="background-color:red"> <!--特異性 1/0/0/0 - 被"!important"覆蓋--> </div> </section> </div> </div> </article>
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號