更改 Domino 生成 HTML 页面的 DOCTYPE


浏览器都有怪癖模式(Quirks Mode)和标准模式(Standards Mode)。怪癖模式是为了兼容老旧的网页,去模拟早期浏览器(如 IE5.5)的非标准实现;而标准模式会尽可能的按照标准去执行。而激活不同模式的关键正是 HTML 页面的 DOCTYPE。

Domino 生成的默认的 DOCTYPE 还是:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>

在目前所有流行的浏览器下它都会触发怪癖模式,问题的解决需要修改到doctype。下面是相应说明与修改方法:

/*******************这部分摘自 What’s new in Notes/Domino 7.0.2***********开始***************/

User-defined HTML tag attributes
User-defined attributes can now be added to the <HTML> tag generated by the web engine. When the field $$HTMLTagAttributes is present on a form, its contents are placed in the attribute list of the <HTML> tag. For more information, see “Additional HTML-related field attributes” in these release notes

Custom <!DOCTYPE> declaration
Users can now specify a custom <!DOCTYPE> declaration on a per form basis. When the field$$HTMLFrontMatter is present on a form, its contents will be placed in the generated HTML, ahead of the <html> tag, and the web server will not generate anything there automatically. For more information, see “Additional HTML-related field attributes” in these release notes

/*******************这部分摘自 What’s new in Notes/Domino 7.0.2***********结束***************/

可以看到新版本提供了一个表单域来控制doctype。不过,在Domino7.02后的版本中才支持这个域,在之前的版本中只能在notes.ini中添加参数:DominoCompleteDoctype解决。
具体参数值:
0 = <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>

1 = <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “” title=”http://www.w3.org/TR/html4/loose.dtd”>”>http://www.w3.org/TR/html4/loose.dtd”>

2 = <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “” title=”http://www.w3.org/TR/html4/strict.dtd”>”>http://www.w3.org/TR/html4/strict.dtd”>

我们只是想要触发标准模式,那么用 1 就可以了。不过由于是通过 Notes.ini 修改的,肯定会影响到所有的表单,想要更改个别的表单可以使用 $$HTMLFrontMatter 域。

时间: 2024-08-22 01:13:51

更改 Domino 生成 HTML 页面的 DOCTYPE的相关文章

NET MVC RazorEngine 解析模板生成静态页

ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目. 我们在很多项目开发中会常常用到页面静态化,页面静态化有许多方式,最常见的就是类似很多PHP CMS种使用的 标签替换的方式(如:帝国CMS.EcSh

Phantomjs 生成多页PDF

开篇 最近使用 Phantomjs 生成PDF,其中遇到一些问题,导致PDF生成失败,如出现空白文件或一页数据量太大,都是由于没有设置好格式导致.特别是分页问题,感觉资料很少,除了在 StackOverflow 上看到些许资料外,中文社区基本看不到,附上修改后的 rasterize.js 来做讲解: 1 var page = require('webpage').create(), 2 system = require('system'), 3 address, output, size; 4

生成静态页技术

概要: 1.什么是生成静态页技术? 答:互联网上流行的做法是将数据源代码写入数据库再从数据库读取生成静态面,这样无形间就加大了数据库.将现有的ASP页直接生成静态页,将会节省很多. 2.为什么要生成静态页以及好处? 答:一.加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明 显提高: 二.有利于搜索引擎优化SEO,Baidu.Google都会优先收录静态页面,不仅被收录的快还收录的全: 三.减轻服务器负担,浏览网页无需调用系统数据库: 四.网站更安全,HTML页面不会受Asp相关

[Java Web]动态生成静态页

最近手机APP需要加一个分享功能.考虑到分享页面的点击量会远远大于注册用户量,为了减少服务器压力决定将分享页面生成html静态页供用户访问. 生成静态页的总体思路为: 从数据库中查找所需的数据 将数据嵌入到html代码中 把生成好的html代码通过文件流上传到服务器 数据嵌入可以通过两种方法实现:html模板替换或jsp动态生成. 1.html模板生成: 流程: 客户端向后端发出http请求 后端从数据库中查找需要的数据 从服务器找到对应的模板文件,替换其中内容并上传到服务器 将上传后得到的ur

5秒后跳转到另一个页面的js代码

今天看视频学习时学习了一种新技术,即平时我们在一个页面点击"提交"或"确认"会自动跳转到一个页面. 在网上搜了一下,关于这个技术处理有多种方法,我只记下我在视频里学到的三种: 1.用一个response.sendRedirect("目标页面.jsp\.htm");实现直接跳转: 2.有时我们需要有点提示,比如"x秒后自动跳转,若没有跳转,请点击此处",则可以在myeclipse中调用Snippets中的Delay Go To

ThinkPHP生成静态页buildHtml方法

原来ThinkPHP自带了生成静态页的函数buildHtml,使用起来很方便!最新的手册里没写这个方法,向大家介绍一下. PHP 1 2 3 4 5 6 7 8 9 10 11 protected function buildHtml($htmlfile='',$htmlpath='',$templateFile='') { $content = $this->fetch($templateFile); $htmlpath   = !empty($htmlpath)?$htmlpath:HTML

基于PHP生成静态页的实现方法

t1.php 复制代码 代码如下: <?php// 方法一根据模版生成静态页面// replaceTemplateString函数用于替换模板中指定字符串function replaceTemplateString($templateString) {    // 用来替换的变量    $title = "文章标题";    $body = "这里是文章主体";    // 替换模板 中指定字符串    $showString = str_replace (

更改MyEclipse生成的Servlet的模板(8.5)

1.关闭你的MyEclipse2.找到MyEclipse的安装目录比如:C:\Program Files\Genuitec3.搜索*wizard*(com.genuitec.eclipse.wizards_8.5.0.me201003052220.jar)4.打开,找到templates\Servlet.java,这个文件就是MyEclipse生成Servlet的模板代码5.弄出来,做好备份,开始修改. 如果安装目录下面没有:Genuitec C:\Users\用户名\ 我是win7  就工具-

宏观视角下的浏览器:05 | 渲染流程(上):HTML、CSS和JavaScript,是如何变成页面的?

前言:该篇说明:请见 说明 —— 浏览器工作原理与实践 目录 在上一篇文章中我们介绍了导航相关的流程,那导航被提交后又会怎么样呢?就进入了渲染阶段.这个阶段很重要,了解其相关流程能让你 “看透” 页面是如何工作的,有了这些知识,你可以解决一系列相关的问题,比如能熟练使用开发者工具,因为能够理解开发者工具里面大部分项目的含义,能优化页面卡顿问题,使用 JavaScript 优化动画流程,通过优化样式表来防止强制同步布局,等等. 既然它的功能这么强大,那么今天,我们就来好好聊聊 渲染流程. 通常,我