84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
我的网站目前有3个CSS文件,这些文件作为网站的一部分自动包含在内,我没有访问源代码的权限,即网站的index.html文件,但我可以访问我的网站的CSS文件。
我试图使用自己的样式来覆盖我的网站的CSS文件,并创建一个新的CSS文件,其中包含我想要覆盖的所有样式。
我尝试使用@import url(css4.css),并将其放置在我的最后一个CSS文件的顶部,但这不会覆盖最后一个CSS文件的样式。
@import url(css4.css)
我该如何实现这个目标?
这里有一个有趣的解决方案,没有人提到过。
事实:
您无法修改页面的HTML -没问题!
您可以修改CSS文件,但开发人员可能稍后再次修改它们并删除您所做的任何更改 -不必担心。
您不能/不想使用Javascript和JQuery -对我来说没问题。
您可以在服务器上添加更多文件 -太棒了!
让我们进行一些.htacess黑客攻击,以求取乐和利益!
Options +FollowSymlinks RewriteEngine on RewriteBase / RewriteRule ^(.*?)css3.css(.*?) hackedCSS3.php [L]
结果:每次请求时,hackedCSS3.php会被静默地提供,而不是css3.css。
参考:http://httpd.apache.org/docs/2.2/howto/htaccess.html
// 在这里添加您的CSS,使用任何有趣的!important或覆盖技巧(即:特定性) div { ... }
额外奖励:
您可以将此解决方案扩展到此一个.php文件中的所有三个.css文件(但仅提供css3.css,并使用聪明的正则表达式删除/修改那些开发人员的CSS,而不触及任何文件。这些可能性令人心动。
.php
.css
.htaccess文件应位于网站的文档根目录中。这是www.example.com/index.html加载index.html的地方。
它可以位于您在.htaccess文件中指定的任何目录中。文档根目录也可以。更改
RewriteRule ^(.*?)css3.css(.*?) hackedCSS3.php [L]
为
RewriteRule ^(.*?)css3.css(.*?) /folders/you/want/hackedCSS3.php [L]
不需要。将该部分的CSS代码视为.css文件处理。您不需要标签。
除了使用大多数答案建议使用的!important之外,这是一个关于CSS特异性的问题
!important
可以用4列优先级来表示:
/*演示目的*/ 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 } /* ------------ 覆盖内联样式 ----------- */ /*要覆盖内联样式,我们现在使用!important*/ /* 特异性 0/0/1/0 */ .inline { background-color: purple !IMPORTANT /*将变为紫色-最终结果*/ }
这里有一个有趣的解决方案,没有人提到过。
事实:
您无法修改页面的HTML -没问题!
您可以修改CSS文件,但开发人员可能稍后再次修改它们并删除您所做的任何更改 -不必担心。
您不能/不想使用Javascript和JQuery -对我来说没问题。
您可以在服务器上添加更多文件 -太棒了!
让我们进行一些.htacess黑客攻击,以求取乐和利益!
文档根目录下的.htaccess文件:
结果:每次请求时,hackedCSS3.php会被静默地提供,而不是css3.css。
参考:http://httpd.apache.org/docs/2.2/howto/htaccess.html
hackedCSS3.php文件:
额外奖励:
您可以将此解决方案扩展到此一个
.php
文件中的所有三个.css
文件(但仅提供css3.css,并使用聪明的正则表达式删除/修改那些开发人员的CSS,而不触及任何文件。这些可能性令人心动。补充:
.htaccess文件应位于网站的文档根目录中。这是www.example.com/index.html加载index.html的地方。
它可以位于您在.htaccess文件中指定的任何目录中。文档根目录也可以。更改
为
不需要。将该部分的CSS代码视为.css文件处理。您不需要
标签。
除了使用大多数答案建议使用的
!important
之外,这是一个关于CSS特异性的问题可以用4列优先级来表示:
这是一个完整示例的CSS特异性代码片段