3

您好,最近我看到一些网站,在查看其源代码时隐藏了它们的源 CSS!这怎么可能..我认为一些javascript可以解决问题。这是我在 Google 上找到的一段代码。

<script type="text/javascript" src="css.js"></script>

var cssFile = document.createElement('link');
cssFile.type = 'text/css';
cssFile.rel = 'stylesheet';
cssFile.href = '/test.css';
cssFile.media = 'screen';
cssFile.title = 'dynamicLoadedSheet';
document.getElementsByTagName("head")[0].appendChild(cssFile); 

那么这段代码是要隐藏我的 css 还是会伪造用户 css 的来源..?

4

3 回答 3

8

那么这段代码会隐藏我的css吗

还是会伪造用户 css 的来源..?


使用查看源代码会稍微难以发现……但多年来我还没有看到有人使用它作为检查页面工作方式的第一种方法。DOM 检查器工具将显示生成的<link>元素,并将显示应用于任何给定元素的样式以及指向它们出现的样式表文件的链接。网络监控软件(包括内置于 Firebug、Chrome 开发者工具等的软件等) ) 也会显示样式表的 HTTP 请求和响应。


它会做的是延迟 CSS 的任何加载,直到 JS 运行。就这些。

这可能是因为某些 CSS 仅在启用了 JS 的浏览器中使用(CSS 可能会隐藏一些内容,然后仅通过 JS 交互显示,因此作者希望它在以后无法显示时默认为可见与 JS)。

这可能是为了先加载内容然后再设置样式(作为一种技巧,以使内容加载性能优先于内容样式)。

于 2013-10-26T10:10:39.193 回答
4

几乎所有主流浏览器中都有FirebugChrome 开发人员工具Web 开发人员工具等工具,并且作为浏览器查看 CSS 和资源的方式,它们也以相同的方式查看它们并获取 CSS。

我说的是这样的资源:

  1. 萤火虫


    (来源:getfirebug.com

  2. Chrome 开发工具


    (来源:如何在 Chrome 开发者工具中查看和编辑 CSS

  3. F12 Internet Explorer 中的 Web 开发人员工具


    (来源:microsoft.com

所有这些工具都显示了 CSS 文件以及继承了哪些样式,以及哪些元素继承了它们。

没有办法隐藏像 CSS 这样的客户端组件。

您正在做的事情可能会减慢浏览器的性能和页面的加载时间,从而使访问者(如果他们数量众多)感到厌烦并成为可用性问题。

于 2013-10-26T10:10:43.700 回答
-1

这是隐藏CSS的代码:

首先是 JavaScript

$(window).load(function(){//Function call On Load windows

    $.post("Ajax.php?action=getCss",{},function(data){//Ajax Request To CSS 
        $("#Corecss").html(data);// Paste CSS in Corecss div without Showing            
    });
 });//Thanks Hashaam zahid From Pakistan

在 HTML 中:

<div id="Corecss"></div>

在 PHP 中,创建一个 Ajax.php 文件

if($_GET['action']=='getCss')
{
$sDbServerName="localhost";$sDbUserName="***";$sDbPassword="*****";$sDbName="Data";// Connection with database server $dbConnect=mysql_connect($sDbServerName,$sDbUserName,$sDbPassword);if($dbConnect)
{
    
      echo   '<link rel="stylesheet" href="css/creative.css" type="text/css">';

    
}
else
{
    die("You Cannot Do it With Css");
}


}//Thanks From Hahshaam zahid     ( ittuc.com )  and facebook/HashaamKhan321
于 2016-06-02T06:06:13.027 回答