今天在网上下了个手风琴网页左边菜单的特效实例,下载下来一看是html文件,直接在IE9,谷歌,Firefox32.0.3浏览器运行都没问题,样式没问题,点击特效也没问题
现在我将html文件复制到我的web应用下,改成jsp文件
我只将html文件的前面部分替换为jsp页面独有的代码
<span style="font-size:18px;"><%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 <span style="color:#ff0000;">Transitional//EN</span>"></span>
再运行在tomcat服务器下,我用谷歌,Firefox32.0.3浏览器运行都没问题,可是在IE9上运行就出现了大问题了
css样式没有了,js特效也没有了,这不是坑吗
到网上也有各种解决办法
下面是我出现问题的解决办法
<span style="font-size:18px;"><%@ page language="java" import="java.util.*" <span style="color:#ff0000;">contentType="text/html; charset=UTF-8"</span> pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<span style="color:#ff0000;"><!DOCTYPE html></span>
<html>
<head>
<meta name="content-type" content="text/html; charset=UTF-8"></span>
<!DOCTYPE html>是HTML5中的形式
这样就好了,css显示正常,js特效也没问题了
后来在一个页面我用了framset标签,那个jsp文件在MyEclipse中出现黄色信息一大堆,看的都恶心
原来在HTML5中人家不支持framset了,这可到w3c官网查看得知http://www.w3cschool.cc/tags/tag-doctype.html
但是我想用framset怎么办呢,网上说用div加css可以实现,但是我一想又改这个样式太麻烦了,一看官网竟然还有这么个东西
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
诶它这个 DTD 与 HTML 4.01 Transitional 相同,但是允许使用框架集内容,把那个<!DOCTYPE html>改成这样就解决问题了
framset还能用哦
终上所述,html转jsp文件,并且framset要能用的代码
<%@ page language="java" import="java.util.*"
<span style="color:#ff0000;">contentType="text/html; charset=UTF-8"</span> pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0<span style="color:#3366ff;">1 Frameset//EN" "http://www.w3.org/TR/html4/</span><span style="color:#ff0000;">frameset.dtd</span><span style="color:#3366ff;">"</span>>
<html>
<head>
<meta name="content-type" content="text/html; charset=UTF-8">
好了终于解决问题了,前台的一些问题真的能把人的热情给搞没了,要考虑兼容性,又要在不同浏览器之间运行正常
调试起来都要跪了,一天竟搞了这么个问题