我正在设计一个看起来像这样的布局:
== header ==
== ad banner ==
== content ==
== footer ==
但源代码顺序为:
== content ==
== header ==
== footer ==
== ad banner ==
所有这一切的想法和目标
在最后加载广告代码,以便页面不会被外部加载的javascripts放慢速度
由于SOC而优化网站
所以我把标题放在绝对位置,内容带有margin-top以便为标题腾出空间。这很好,所以我对广告横幅做了同样的事。
看起来很不错,但问题是:当有人查看启用了adblock的网页或广告没有加载时(maby因为目前还没有运行时),存在巨大的差距。
所以我刚给window.onload添加了一个函数,我在那里使用javascript重新排序源代码
(伪代码:overallcontainer.insertbefore(content.firstchild,adbanner)
)
另外,我会检查广告横幅div的偏移高度,并根据它设置一些填充。
这很有效,但我担心的是它可能会给某些广告提供商带来问题。
大多数提供商在其服务条款中声明您不得修改其代码,我显然不这样做。但是我把它周围的东西搞得一团糟。
答案 0 :(得分:0)
我想到的一个解决方案是保持内容绝对, 如果ad-div的偏移高度为零(或者<展开横幅高度),则递减margin-top ... 但是这会导致内容在页面加载后向上移动一点,看起来很奇怪。 javascript解决方案有类似的行为,因为内容向下移动,横幅出现,但这没关系,甚至可能增加横幅点击率... 当然最好的办法是什么都没有移动,但我认为这只有在横幅处于最终源订单位置之前才有可能...