CSDN 代码不能语法高亮的原因

CSDN代码不能语法高亮的原因探索

1、找原因

昨天写完博客发现其中代码不能高亮,本以为是写的格式出了问题。反复修改之后依然无法解决,于是打开源码查看:
打开代码对应的标签源码如下图所示:
这里写图片描述

其中对应代码的样式已经显示python语法,但实际的代码还是黑乎乎一片没有高亮:
这里写图片描述

那么就打开对应的样式表看看,这才发现了问题:


这里写图片描述

对应的样式表被禁用了,相当于对应的代码语法高亮没有执行。

先前不懂前端,查询原因后发现这也许是由优先级造成的:

优先级关系:内联样式 > ID 选择器 > 类选择器 = 属性选择器 = 伪类选择器 > 标签选择器 = 伪元素选择器
造成了样式被忽略;
优先级
样式


4、尝试解决

找到原因后,觉得这大概是网站方面的问题,但自己也尝试着解决一下,向父级标签看,发现在整个文档的父级有一个div标签:
这里写图片描述

和以前的不一样了,类变成了prism-atom-one-dark这样的风格, 尝试吧这个删除后,代码恢复高亮
这里写图片描述

再深入挖掘一下,发现可能是对应主题定义的问题:
这里写图片描述

这里应该是没有定义主题的颜色,同时覆盖了原来的hljs样式,造成了代码不高亮,删除这句以后代码高亮恢复。

原文地址:https://www.cnblogs.com/Tom-Ren/p/9897820.html