Html模板
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0 Transitional//EN">
<!-- saved from url=(0022)http://www.h3c.com.cn/ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Html模板</title>
<style> /*提示圆角框*/
.circle_bot {
clear: both;
font: 12px/1.125 Arial;
} .circle_bot .s_b b, .circle_bot span.s_i i {
font-size: 1px;
line-height: 1px;
overflow: hidden;
display: block;
clear: both;
} .circle_bot .s_b b, .circle_bot span.s_i i, .circle_bot .info {
background: #fff2f2;
border: #f88 solid;
} .circle_bot b.b1 {
border-width: 1px 0 0 0;
margin: 0 2px;
height: 0px;
} .circle_bot b.b2 {
border-width: 0 1px;
margin: 0 1px;
height: 1px;
} .circle_bot span.s_i i {
height: 1px;
border-width: 0 1px;
} .circle_bot .i1 {
width: 0px;
margin-left: 36px;
} .circle_bot .i2 {
width: 2px;
margin-left: 35px;
} .circle_bot .i3 {
width: 4px;
margin-left: 34px;
} .circle_bot .i4 {
width: 6px;
margin-left: 33px;
} .circle_bot .i5 {
width: 8px;
margin-left: 32px;
} .circle_bot .i6 {
width: 10px;
margin-left: 31px;
margin-top: -1px;
} .circle_bot .info {
border-width: 0 1px;
color: #333;
padding: 10px;
} /*浅黄边白底*/
div.circle_yellow {
clear: both;
} div.circle_yellow .s_b b, div.circle_yellow .s_i i, div.circle_yellow .info
{
background: #fff;
border-color: #db9;
} body {
font-size: 10pt;
} .root { } .theader {
background-color: #eeeeee;
text-align: center;
font-weight: bold;
} ul, li {
display: block;
cursor: pointer;
padding-left: 5px;
margin: 0px
} ul {
padding-left: 15px;
} .highlight {
background-color: #88ff88;
} .pass {
background-color: #ffffff;
} .info {
background-color: #ccccff;
} .warn {
background-color: #ffff99;
} .error {
background-color: #ffbbbb;
} .fatal {
background-color: #ff0000;
color: #ffffff;
} .diagram {
font-size: 10pt;
padding: 3px;
border: 1px solid #555555;
} #diagram {
font-size: 12pt;
text-align: left;
padding: 20px;
} #device_info {
font-size: 10pt;
padding: 20px;
} #diag_report {
padding: 20px;
} #diag_report table {
border: 1px solid #999999;
border-right: 2px solid #999999;
} #diag_report table td {
word-break: keep-all;
border-bottom: 1px solid #555555;;
padding: 5px;
font-size: 10pt;
} #solution {
width: 550px;
line-height: 15pt;
display: none;
position: absolute;
} #solution_flag_div {
cursor: pointer;
padding-left: 20px;
width: 200px;
} #diag_path {
font-size: 10pt;
}
</style>
</head>
<body>
<div id="diag_report">
<table cellspacing='0' cellpadding='0'>
<tr class='theader'>
<td style='border-right: 1px solid'>编号
<td>类别</td>
<td>检查项</td>
<td>级别</td>
<td class='infoheader'>巡检结果</td>
<td class='infoheader'>建议</td>
</tr>
<tr>
<td style='border-right: 1px solid;'>1</td>
<td rowspan='2' style='border-right: 1px solid'>集群</td>
<td>检查集群高可靠性(HA)功能</td>
<td>重要</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+建议开启集群高可靠性(HA)功能</li>
<ul>
<li class='error' onclick='switch_menu(this)'>序号="1" 集群名称="Cluster02" HA状态="未开启" </li>
</ul>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>2</td>
<td>检查集群计算资源DRS功能</td>
<td>重要</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+建议开启集群计算资源DRS功能</li>
<ul>
<li class='error' onclick='switch_menu(this)'>序号="1" 集群名称="Cluster01" 计算DRS状态="未开启" </li>
<li class='error' onclick='switch_menu(this)'>序号="2" 集群名称="Cluster02" 计算DRS状态="未开启" </li>
</ul>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>3</td>
<td rowspan='8' style='border-right: 1px solid'>主机</td>
<td>检查CVK主机和CVM主机的CAS版本是否一致</td>
<td></td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>CVK主机和CVM主机的CAS版本必须保持一致</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>4</td>
<td>检查主机状态是否正常</td>
<td>重要</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>确保所有主机状态正常</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>5</td>
<td>检查NTP服务器配置</td>
<td>重要</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+建议配置主备NTP服务器</li>
<ul>
<li class='error' onclick='switch_menu(this)'>NTP服务器配置="未配置" </li>
</ul>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>6</td>
<td>检查CVK和CVM主机的时间差</td>
<td>重要</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>CVK和CVM主机的系统时间需要保持一致</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>7</td>
<td>检查主机系统时间和物理时钟的时间差</td>
<td>重要</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>主机系统时间和物理时钟需要保持一致</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>8</td>
<td>检查主机CPU利用率</td>
<td>紧急</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>建议主机CPU利用率不要超过80%</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>9</td>
<td>检查主机内存利用率</td>
<td>紧急</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>建议主机内存利用率不要超过80%</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>10</td>
<td>检查主机分区利用率</td>
<td>紧急</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>建议主机分区利用率不要超过80%</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>11</td>
<td rowspan='5' style='border-right: 1px solid'>虚拟交换机</td>
<td>检查虚拟交换机状态</td>
<td>重要</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>确保虚拟交换机状态正常</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>12</td>
<td>检查主机是否只有管理虚拟交换机</td>
<td>重要</td>
<td>通过</td>
<td class='root'><ul>
<li class='info' onclick='switch_menu(this)'>管理、存储和业务虚拟交换机不能合并使用</li>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>13</td>
<td>检查虚拟交换机的网卡状态</td>
<td>重要</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+确保虚拟交换机绑定的物理网卡状态正常</li>
<ul>
<li class='error' onclick='switch_menu(this)'>序号="1" 主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch-test" 网卡名称="eth3" 网卡状态="不活动" </li>
</ul>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>14</td>
<td>检查虚拟交换机的链路冗余状态</td>
<td>重要</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+建议虚拟交换机绑定多个物理网卡,提高链路冗余性</li>
<ul>
<li class='error' onclick='switch_menu(this)'>序号="1" 主机名称="HZ-CAS01-CVK01" 虚拟交换机名称="vswitch-app" 网卡名称="eth1" </li>
<li class='error' onclick='switch_menu(this)'>序号="2" 主机名称="HZ-CAS01-CVK01" 虚拟交换机名称="vswitch-storage" 网卡名称="eth2" </li>
<li class='error' onclick='switch_menu(this)'>序号="3" 主机名称="HZ-CAS01-CVK01" 虚拟交换机名称="vswitch0" 网卡名称="eth0" </li>
<li class='error' onclick='switch_menu(this)'>序号="4" 主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch-app" 网卡名称="eth2" </li>
<li class='error' onclick='switch_menu(this)'>序号="5" 主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch-storage" 网卡名称="eth1" </li>
<li class='error' onclick='switch_menu(this)'>序号="6" 主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch-test" 网卡名称="eth3" </li>
<li class='error' onclick='switch_menu(this)'>序号="7" 主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch0" 网卡名称="eth0" </li>
</ul>
</ul></td>
</tr>
<tr>
<td style='border-right: 1px solid;'>15</td>
<td>检查集群下CVK主机的虚拟交换机名称是否一致</td>
<td>紧急</td>
<td>不通过</td>
<td class='root'><ul>
<li class='error' onclick='switch_menu(this)'>+确保集群下CVK主机的虚拟交换机名称保持一致</li>
<ul>
<li class='error' onclick='switch_menu(this)'>+序号="1" 集群名称="Cluster01" 主机一名称="HZ-CAS01-CVK01" 主机二名称="HZ-CAS01-CVK02" </li>
<ul>
<li class='error' onclick='switch_menu(this)'>主机名称="HZ-CAS01-CVK01" 虚拟交换机名称="test,vswitch-app,vswitch-storage,vswitch0" </li>
<li class='error' onclick='switch_menu(this)'>主机名称="HZ-CAS01-CVK02" 虚拟交换机名称="vswitch-app,vswitch-storage,vswitch-test,vswitch0" </li>
</ul>
</ul>
</ul></td>
</tr>
</table>
</div>
<!--解决方案文字框-->
<div id="solution" class="circle_bot circle_yellow">
<span class="s_b"> <b class="b1"></b> <b class="b2"></b></span>
<div id="info" class="info"></div>
<span class="s_b"><b class="b2"></b> <b class="b1"></b></span> <span
class="s_i"> <i class="i6"></i> <i class="i5"></i> <i
class="i4"></i> <i class="i3"></i> <i class="i2"></i> <i class="i1"></i></span>
</div> <script>
function showfold(obj)
{
var
curr_status=obj.style.display; obj.style.display=( curr_status==
"block" || curr_status== "" )? "none" : "";
} function
addEvent(obj)
{
obj.onclick=showfold(obj) } function
fold (obj)
{
obj.style.display="none"
;
} function
show (obj)
{
obj.style.display="block"
;
} function
show_solution(obj)
{ //IE支持window.event事件,而火狐(ff)不支持,需要显式地去获取onmouseover事件event,才能用event获得坐标x,y
var event=getEvent(); var show_flag=document.getElementById(
"solution_flag").checked;
if (show_flag !=true)
{
return;
} var text=obj.getAttribute(
"solution");
if (text== null || text.length==
0)
{
return;
}
var
solution=document.getElementById( "solution");
var
info=document.getElementById(
"info");
solution.style.display="block"
; //ff不支持innerText方法,改为兼容的textContent
if(!document.all)
{
info.textContent=text;
} else {
info.innerText=text;
} //ff不支持style.posLeft和style.posTop方法,这里改为兼容的style.left和style.top;另外ff还要求赋值得加上"px"
//solution.style.left=event.clientX
- 30 + document.documentElement.scrollLeft+"px";
//solution.style.top=event.clientY
- solution.offsetHeight - 15 + document.documentElement.scrollTop+"px" ; solution.style.left=event.clientX
- 30 + (document.body.scrollLeft||document.documentElement.scrollLeft)+"px";
solution.style.top=event.clientY
- solution.offsetHeight - 15 + (document.body.scrollTop||document.documentElement.scrollTop)+"px" ; //solution.style.posLeft=event.clientX
- 30 + document.documentElement.scrollLeft;
//solution.style.posTop=event.clientY
- solution.offsetHeight - 15 + document.documentElement.scrollTop ; }
function
hide_solution()
{
document.getElementById("solution").style.display="none"
;
} function highlight(obj)
{
var
class_old=obj.className; obj.className="highlight"
;
obj.setAttribute("class_old", class_old); show_solution(obj); } function
recover(obj)
{
obj.className=obj.getAttribute(
"class_old");
hide_solution();
} function
getRootElements()
{
var result=[]; var
root_list=document.getElementsByTagName( "TD");
for (var i=0; i< root_list.length ; i ++)
{
if (root_list[i].className == "root")
{
result.push(root_list[i]);
}
}
return result;
} //把除第一级标题下的子标题隐藏
var is_set = false;
function switch_sub ( how )
{
//var root_list = document.getElementsByClassName("root");
var root_list = getRootElements(); for (var i = 0 ; i < root_list.length; i++)
{
var ul_list = root_list[i].getElementsByTagName("UL");
for (var j = 0; j < ul_list.length; j++)
{
if (ul_list[j] != root_list[i].firstChild)
{
if (how == "fold")
{
fold(ul_list[j]);
}else{
show(ul_list[j]);
}
}
} if (!is_set)
{
var li_list = root_list[i].getElementsByTagName("LI");
for ( var k = 0 ; k < li_list.length; k++)
{
li_list[k].setAttribute("onmouseover", "highlight(this)");
li_list[k].setAttribute("onmouseout", "recover(this)");
}
} }
is_set = true;
} //展开和收起子项时,改变+ -
function change_icon(obj)
{
var str = obj.firstChild.nodeValue;
if ( str.indexOf("+") < 3 && str.indexOf("+") != -1)
{ obj.firstChild.nodeValue = str.replace("+", "-");
//obj.firstChild.nodeValue = str.replace("?", "?"); }
else if ( str.indexOf("-") < 3 && str.indexOf("-") != -1 )
{
obj.firstChild.nodeValue = str.replace("-", "+");
} } function switch_menu(obj)
{
var uplevel = obj.parentNode;
//var uplevel = obj;
var ul_list = uplevel.childNodes; change_icon(obj); for (var i = 0; i < ul_list.length; i++)
{
if (ul_list[i].nodeName == "UL")
{
showfold(ul_list[i]);
}
}
}
switch_sub('fold'); //兼容ie和ff获得event的方法
function getEvent()
{
//如果是IE
if(document.all) return window.event; //如果不是IE
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0)
{
if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation))
{
return arg0;
}
}
func=func.caller;
}
return null;
}
//------------------------------------------------------------------------------------------------------------------------------------------------------------------
//兼容修改到这结束 </script>
</body>
</html>
Html模板的更多相关文章
- Jade模板引擎让你飞
写在前面:现在jade改名成pug了 一.安装 npm install jade 二.基本使用 1.简单使用 p hello jade! 渲染后: <p>hello jade!</p ...
- ABP入门系列(2)——通过模板创建MAP版本项目
一.从官网创建模板项目 进入官网下载模板项目 依次按下图选择: 输入验证码开始下载 下载提示: 二.启动项目 使用VS2015打开项目,还原Nuget包: 设置以Web结尾的项目,设置为启动项目: 打 ...
- CMS模板应用调研问卷
截止目前,已经有数十家网站与我们合作,进行了MIP化改造,在搜索结果页也能看到"闪电标"的出现.除了改造方面的问题,MIP项目组被问到最多的就是:我用了wordpress,我用了织 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- 【原创分享·微信支付】C# MVC 微信支付之微信模板消息推送
微信支付之微信模板消息推送 今天我要跟大家分享的是“模板消息”的推送,这玩意呢,你说用途嘛,那还是真真的牛逼呐.原因在哪?就是因为它是依赖微信生存的呀,所以他能不 ...
- OpenCV模板匹配算法详解
1 理论介绍 模板匹配是在一幅图像中寻找一个特定目标的方法之一,这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否“相似”,当相似度足够高时,就认为找到了我们的目标.OpenCV ...
- 前端MVC学习总结(一)——MVC概要与angular概要、模板与数据绑定
一.前端MVC概要 1.1.库与框架的区别 框架是一个软件的半成品,在全局范围内给了大的约束.库是工具,在单点上给我们提供功能.框架是依赖库的.AngularJS是框架而jQuery则是库. 1.2. ...
- ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案
好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- DDD领域驱动设计 - 设计文档模板
设计文档模板: 系统背景和定位 业务需求描述 系统用例图 关键业务流程图 领域语言整理,主要是整理领域中的各种术语的定义,名词解释 领域划分(分析出子域.核心域.支撑域) 每个子域的领域模型设计(实体 ...
随机推荐
- 九度oj 题目1034:寻找大富翁
题目链接:http://ac.jobdu.com/problem.php?pid=1034 题目描述: 浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁. 输入: 输入包含多组测试用 ...
- mysql优化思路
/* mysql优化思路 1.数据库设计 2.sql语句优化 3.数据库参数设置 4.恰当的硬件资源和操作系统 数据库设计 数据的3NF( ...
- document.write 动态加载 script 脚本时,特殊异常
项目中有个JS,需要动态引入. 写法如下: <script> document.write('<script src="http://www.z4.com/js/xxxx. ...
- 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1
在Windows Server 2008下直接安装SQL Server 2008时,会出现如下错误: 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1 ...
- Asp.net中WebForm 与 MVC的架构区别
ASP.NET Webform 后台代码(behind code) 这种behind code 模式有5个问题,我们用MVC的设计思想来分别解决这些问题 1.基于视图的方案来解决基于行为的需求 从上图 ...
- 通过Java Api与HBase交互(转)
HBase提供了Java Api的访问接口,掌握这个就跟Java应用使用RDBMS时需要JDBC一样重要,本文将继续前两篇文章中blog表的示例,介绍常用的Api. import java.io.IO ...
- HBase使用场景和成功案例 (转)
HBase 使用场景和成功案例 有时候了解软件产品的最好方法是看看它是怎么用的.它可以解决什么问题和这些解决方案如何适用于大型应用架构,能够告诉你很多.因为HBase有许多公开的产品部署,我们正好可以 ...
- 对char类型的理解以及对补码的理解分析
今天遇到这样一个小程序,觉得当中有些问题很容易让人忽略的! 这个程序代码如下: 程序的结果为: 我想很多像我一样的小白可能才开始是想不明白为什么最后的结果是255吧!首先,我们得知道 strlen() ...
- Spark RDD类源码阅读
每天进步一点点~开搞~ abstract class RDD[T: ClassTag]( //@transient 注解表示将字段标记为瞬态的 @transient private var _sc: ...
- python中利用logging包进行日志记录时的logging.level设置选择
之前在用python自带的logging包进行日志输出的时候发现有些logging语句没有输出,感到比较奇怪就去查了一下logging文档.然后发现其在设置和引用时的logging level会影响最 ...