停止HTML5Builder包装div标签中的组件

时间:2013-03-28 18:49:09

标签: html5builder

所有

有没有办法阻止HTML5Builder在div标签中包装组件?

获取输出的每个组件都有额外的div标签,如下所示:

<div id="label1_outer" style="display: inline;"><div id="label1"    >Label</div></div>

当我取消选中组件上的'divwrap'时,该组件的输出将更改为:

<div id="label1_outer" style="display: inline;">Label</div>

所以几乎就是我要找的东西。

[请注意,这是使用Smarty模板输出标签组件值后的结果代码。]

我正在尝试找到一种方法来停止显示这些额外的div标签,因为它会丢弃我的CSS,重新编写我的CSS以处理这个问题真的很痛苦。

我在用户之前关于编辑graphics.ini.php文件的回复后发布了相同的问题:

https://forums.embarcadero.com/thread.jspa?threadID=80038&tstart=0

然而,到目前为止,没有运气得到答复。

有关如何阻止HTML5Builder强制输出这些标记的任何信息都会很棒,谢谢!

1 个答案:

答案 0 :(得分:0)

如果其他人需要答案,我确实已经触底了。

在H5B安装目录的RPCL文件夹中,有一个名为“smartytemplate.inc.php”的文件。这个文件是在每个引用的组件周围添加额外的div包装器。

要停止它,请在文件中搜索“_outer”,然后您将完成2个创建额外div的部分:

if ($v->inheritsFrom('Control'))
{
if ($v->DivWrap) $code="<div id=\"".$v->Name."_outer\" style=\"display:inline;$style\">".$code."</div>";
}
else $code="<div id=\"".$v->Name."_outer\" style=\"display:inline;$style\">".$code."</div>";

你可以只注释掉这段代码,烦人的包装就会消失。

希望这有用!