让嵌入窗体的 WebBrowser 控件无边框

 

前一段时间升级了一个程序,将程序的主界面用网页来设计,效果非常好,用 HTML+CSS 可以实现更加丰富的界面效果,比直接用 Delphi 来得容易。

实现的方法很简单,在窗体添加一个 WebBrowser 组件,然后执行以下代码:

  1. WebBrowser1.Navigate('D:/Soft/HomePage.html');

但随之而来出现了一个问题:WebBrowser 组件在未载入 HTML 之前是无边框的,当载入 HTML 之后,WebBrowser 四周出现了一个三维边框,和程序本身的风格极不协调,查看了 WebBrowser 的所有属性,没有属性可以改变这一设置。

让嵌入窗体的 WebBrowser 控件无边框_第1张图片

经过测试以后发现,该边框并不是 WebBrowser 产生的,而是 WebBrowser 中载入的 HTML 产生的,如果是这样的话,那问题就好解决了,真接用 CSS 去掉边框:

  1. body {
  2. border0px;
  3. overflowauto/*可自动隐藏或显示滚动条;设为 hidden 完全隐藏滚动条*/
  4. }

当你高兴地设置以上 CSS 后,却发现 WebBrowser 的边框却依然存在,是 CSS 错了吗?NO,是你的 DOCTYPE 出了问题,以上的 CSS 在 XHTML 下是无效果的,将 DOCTYPE 设为 HTML4 即可:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

 

你可能感兴趣的:(html,css,XHTML,border,Delphi,WebBrowser)