HTML CSS JS兼容树(IE,Firefox,chrome)

WEB设计里什么是树?简单讲,点击一个链接,会展开下级目录,再点击会合上,这个就是最简单的树,如何去实现呢,也很简单,css里有一个属性display,这个可以控制内容的现实还是不显示,那么再通过js来控制css的属性即可实现,看如下代码:
<div>顶级目录</div>
<div id="menulist">
<div>菜单1</div>
<div>菜单2</div>
<div>菜单3</div>
</div>
这个就算是树的原型了,当然初始状态给他加上css的display属性,display最常用的是none和block属性
none即不显示,而block则象块类型元素一样显示,再看代码
<div>顶级目录</div>
<div id="menulist" style="display:none">
<div>菜单1</div>
<div>菜单2</div>
<div>菜单3</div>
</div>
如此一来,运行该页面,则只显示顶级目录,如果控制呢,则需要加入js代码
1.先获得menulist
var menulist=document.getElementById("menulist");
2.或者该对象后即可控制其CSS属性
menulist.style.display="block";
加判断
if (menulist.style.display="none")
menulist.style.display="block";
else
menulist.style.display="none";
这样最原始的树就生成了,最终代码
<script>
function showmenu()
{
var menulist=document.getElementById("menulist");
if (menulist.style.display=="none")
menulist.style.display="block";
else
menulist.style.display="none";
}
</script>
<div on
click="showmenu();">顶级目录</div>
<div id="menulist" style="display:none">
<div>菜单1</div>
<div>菜单2</div>
<div>菜单3</div>
</div>
曾经在很长一段时间里,我都按照该方法来制作属性目录,不管要制作的目录有多复杂,该方法屡试不爽,以下截图是我做的比较复杂的树形目录在IE下的运行效果:

可怕的事情发生在chrome下看全乱了,经过一番信息检索,终于找到原因,display除了block和none外,尚有很多其他属性,block是以块状显示,我那上面是以表格来布局的,天知道table和block是不是有深仇大恨,微软自以为聪明地无视了他们的仇恨,而chrome还是很老实地遵守标准,firefox也是一样,所以在他们的解释里还是有问题的,那怎么解决这个问题:
display还有一个属性table-cell,即以table的形式来渲染内容,这个正好符合我使用table来布局的情况

相关推荐: HTML 文本转义小窍门

今天在CSDN看到一种HTML文本转义的小窍门,很简便。 1、用dom的功能。先作为innerTEXT传给一个dom对象,再取innerHTML属性,就可以取到转义后的文本了。 例如: div1.innerText = "title title...."; v…

原创文章,作者:admin,如若转载,请注明出处:https://www.laofox.com/web/html-tutorial/191.html

(0)
上一篇 2022年7月3日 下午1:21
下一篇 2022年7月4日 下午8:30

相关推荐

  • W3C教程(15):W3C SMIL 活动

    SMIL 向 web 增加了对定时和媒介同步的支持。 SMIL 向 web 增加了对定时和媒介同步的支持。 SMIL SMIL (Synchronized Multimedia I...

    html 2022年7月3日
    12300
  • Firefox下英文字母不换行的解决方案

    文本的排版依据语言的不同会有一些格式上的要求,比如简体中文中类似逗号、分号等标点符号不会出现在一行的开头,对于英文来讲就是一个完整单词不会 在两行显示,浏览器会依据类似这样的原则来...

    html 2022年7月3日
    18200
  • 总结XHTML代码常见的应用问题

    一段时间以来,发现有很多人XHTML都不会用,不光是普通的初学者,有的程序员都不是很清楚该怎么写这个XHTML,我这里呢算是把一些常见的应用问题做一个总结,也算能使得大家能在沟通,...

    html 2022年7月3日
    12100
  • 作用相似html标记:strong与em、q、cite、blockquote

    在XHTML标签中有一些标签的作用是相似的,当然这里的相似是指语义相似,以至于很多人都不清楚这些相似的标签如何使用,那么今天的主题就是分解相似的标签,明确各个标签的用途。在前面我们...

    html 2022年7月3日
    13000
  • 入门:HTML的基本标签和属性简单介绍

    HTML是由标志和属性构成的,它们一起被用来告诉浏览器应该如何显示一页文档。标志用来引用一段文字或是一幅图片等文档部件,属性是标志的选项,在标志中修饰,如颜色,对齐方式,高度和宽度...

    html 2022年7月3日
    12100
  • W3C教程(13):W3C WSDL 活动

    Web Services 与应用程序到应用程序的通信有关。WSDL 是一门基于 XML 的 Web Services 描述语言。 Web Services 与应用程序到应用程序的通...

    html 2022年7月3日
    11400
  • 网页制作中使用规范的HTML代码的几点

    许多网站设计者最常犯的错误便是当其网页能够在IE下正常显示便认为其代码正确无误,甚至常看到有人在抱怨其网站排名不理想,到其网站简单看一下便可发现HTML代码中充斥各种各样的错误,在...

    html 2022年7月3日
    12500
  • html 基底网址标记

    它的作用就是定一个全局的样式。那你后面的相对路径会以这个为基准: <img src="logo.gif" />会变成 <img src="https://www....

    html 2022年7月3日
    15600
  • 设置IE8使用IE7的样式的代码

    <meta http-equiv="x-ua-compatible" content="ie=7" /> 相关推荐: html中b标签和strong标签的区别是什么?b...

    html 2022年7月4日
    17600
  • HTML 文本转义小窍门

    今天在CSDN看到一种HTML文本转义的小窍门,很简便。 1、用dom的功能。先作为innerTEXT传给一个dom对象,再取innerHTML属性,就可以取到转义后的文本了。 例...

    html 2022年7月3日
    17300

发表评论

您的电子邮箱地址不会被公开。