我最近购买了一个主题,其中包括在标题中显示横幅的选项。横幅可以使用静态图像或javascript显示。我使用的特定javascript代码用于亚马逊横幅广告,并通过iframe显示在前端。
使用静态图像,横幅将正确显示,如您在此处所见:http://capethemes.com/demo/portal/review/
但是,使用javascript代码时,横幅不可见。在检查源代码时,我发现脚本标记和包含块的html都在那里,但缺少iframe元素。
无论如何,我能够确定这是一个样式问题,但不确定如何解决它。以下默认主题样式将应用于.headad
要素:
.headad {
float: right;
position: absolute;
top: 50%;
right: 0;
margin: -65px 0 0 0;
}
。。。下面是用于显示横幅的片段:
echo \'<div class="clearfix"></div><div class="headad">\';
echo htmlspecialchars_decode($themnific_redux[\'tmnf-headad-script\']);
echo \'</div>\';
更新#1我发现需要为
.headad
div以获取要显示的横幅。这大概是因为它是一个响应性的横幅,因此必须为包含元素指定宽度,以便可以提供适当大小的横幅图像。
以下是所有相关详细信息的概述:
横幅广告和包含div的HTML标记(我只包含了外部HTML)
<div class="headad">
<script type="text/javascript"></script>
<script></script>
<div ><iframe></iframe></div>
</div>
CSS用于
.headad
元素
.headad {
float: right;
position: absolute;
top: 50%;
right: 0;
margin: -65px 0 0 0;
}
这是默认的主题CSS。我变了
float: right;
到
float: none;
因为
position: absolute;
已应用于元素。正如我已经提到的,要显示横幅,我必须为width属性设置一个值。
iframe CSS
iframe {
border: none;
display: inline-block;
width: 728px;
height: 90px;
}
更新2我在JSFIDLE上复制了这个。您可以查看它
here.由于这是一个响应横幅,因此必须指定包含元素的宽度,以便返回大小适当的图像。可能必须使用媒体查询为
.headad
要素