我正在使用以Delphi编码的基于Windows的程序来生成HTML(并且可以将浏览器限制为MSIE 7 +)。
我需要绝对的,像素完美的WYSIWYG。但是,我遇到了文字换行问题。
Delphi中的内容如下所示
-- -----------------
| aaaa bbb ccc ddd |
--------------------
在浏览器中看起来像这样(MS IE和FF。虽然我只针对MSIE,但我使用FF来访问FireDebug)
--------------------
| aaaa bbb ccc |
--------------------
ddd
现在,Delphi有一个Object Inspector
允许我精确设置控件的上/左/宽度/高度,在生成HTML时,我使用它们来定位表单上每个控件的CSS。例如
<fieldset style="position: absolute; top: 56px; left: 32px; width: 185px; height: 13px; ">
<legend> </legend>
<div style="position: absolute; top: 0px; left: 0px; width: 179px; height: 13px;">
Label1 000 111 222 aaa bbb cccc dd
</div>
</fieldset>
但是因为我正在进行文本换行,所以我猜我忽略了一些东西,比如设置margin / border / padding。有什么想法吗?
顺便说一句,我使用Arial 10作为Windows /浏览器可比性的字体,因此它不应该是字体大小的问题。
我认为Delphi必须具有类似于盒子模型的东西,因为它使用边距绘制控件(从左边开始的控件左边有一个可见的间隙;如果我给它宽度100和位置左边的另一个= 100,它们之间有明显的间隙。)
知道我将如何实现WYSIWYG? HTMl必须以Delphi形式反映控件布局。
答案 0 :(得分:1)
试试这个,这是你想要实现的目标吗?
<html>
<head>
</head>
<body>
<form style="margin:0 0 0 0; padding:0 0 0 0;">
<fieldset style="position: absolute; top: 56px; left: 32px; width: 185px; height: 18px; ">
<legend></legend>
<div style="text-align: center; position: absolute; top: 0px; left: 0px; width: 179px; height: 18px;">aaa bbb cccc dd</div>
</fieldset>
</form>
</html>