怎么展示html代码 带高亮显示
1个回答
展开全部
单纯css是实现不了的。
你仔细看一下页面代码就可以发现,页面引用了一个脚本:
<script src="http://www.javaeye.com/javascripts/syntaxhighlighter/shCoreCommon.js?1238329845" type="text/javascript"></script>
虽然内容是被混淆过的,但大致的脉络还是能看清楚的,页面加载完毕后会进行如下处理:
1、查找页面上的所有<pre name='code'>节点;
2、根据class='python|java|cpp|...'属性的指示,分别调用不同的SyntaxHilight处理器;
3、各语言的处理器,将代码格式化(比如将所有关键字替换为<span class='keyword'>xxxxx</span>的形式);
4、将格式化后的内容,替换<pre>元素原来的innerHTML;
5、新内容配合css显示出你现在看到的效果。
实际上,如果你用chrome自带的debugger,很容易就能看到页面加载后的动态内容,原始的<pre>xxxx</pre>内容,已经配替换成<ul><li>xxxx</li><li>xxx</li>.....</ul>
你仔细看一下页面代码就可以发现,页面引用了一个脚本:
<script src="http://www.javaeye.com/javascripts/syntaxhighlighter/shCoreCommon.js?1238329845" type="text/javascript"></script>
虽然内容是被混淆过的,但大致的脉络还是能看清楚的,页面加载完毕后会进行如下处理:
1、查找页面上的所有<pre name='code'>节点;
2、根据class='python|java|cpp|...'属性的指示,分别调用不同的SyntaxHilight处理器;
3、各语言的处理器,将代码格式化(比如将所有关键字替换为<span class='keyword'>xxxxx</span>的形式);
4、将格式化后的内容,替换<pre>元素原来的innerHTML;
5、新内容配合css显示出你现在看到的效果。
实际上,如果你用chrome自带的debugger,很容易就能看到页面加载后的动态内容,原始的<pre>xxxx</pre>内容,已经配替换成<ul><li>xxxx</li><li>xxx</li>.....</ul>
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询