1

我有两个代码块,它们被管理是否使用display:none2 个不同的样式表显示在带有 CSS 的屏幕上。

现在我的问题是,如果页面已在浏览器中加载,并且检测到该页面是否仍会加载 div 内的代码并且只是被隐藏,还是会像评论一样被跳过?

4

3 回答 3

3

简而言之,是的。浏览器总是会在加载 css 之前完全加载 dom,因此您的 DOM 元素已经加载,并且任何资产(例如视频或图像)都将在浏览器到达之前开始加载(并将继续这样做) CSS 告诉它不要显示该元素。

下图显示了浏览器采用的顺序:

在此处输入图像描述

于 2013-08-25T02:20:19.223 回答
1

1st,您的浏览器将在页面加载时加载您的所有 HTML。我知道防止它的唯一方法是将您的 HTML 放在服务器端语言“if”语句中。(或类似的服务器端)

例子:

<?php
   if($variable == "Something"){ ?>
      <p>I want this to load.</p>
   <?php }
   else if($variable == "Something Else"){ ?>
      <p>This should load instead.</p>
   <?php }
?>

但是,如果您需要基于使用 javascrip 或 css hover 等的东西来显示/隐藏隐藏的 HTML,这将不起作用,因为该脚本在服务器上执行并且显示 TRUE if 语句中的内容。

您也可以为此使用 javascript。(我不是 javascript 天才,但我确信这是可行的。)

于 2013-08-25T02:37:16.313 回答
-1

如果您不想将内容加载到代码中,那么您可以轻松地使用 Javascript 将内容放入缓存中。尽管内容本身会加载到代码中。如果您在使用 JS 创建数据缓存方面需要帮助,我可以为您提供帮助。

于 2013-08-25T02:04:52.947 回答