Html 将鼠标悬停在pre上-如何使用纯CSS突出显示单行?
我有一些Html 将鼠标悬停在pre上-如何使用纯CSS突出显示单行?,html,css,pre,Html,Css,Pre,我有一些 <pre> #include <stdio.h> int main() { printf("Hello World"); return 0; } </pre> CSS: 香草Javascript: pre div:hover { background-color: rgba(0,0,0,0.2); } 函数PreHover(){ var输出=“”; var preBox=document.getEl
<pre>
#include <stdio.h>
int main()
{
printf("Hello World");
return 0;
}
</pre>
CSS:
香草Javascript:
pre div:hover { background-color: rgba(0,0,0,0.2); }
函数PreHover(){
var输出=“”;
var preBox=document.getElementById('raw');
var txt=preBox.innerHTML.split('\n');
对于(var x=0;x
这将帮助您为每一行包装div
注意:这需要jQuery
可选:添加空白:nowrap
,以防止换行
为什么要这样做
因为如果只有
,它将是一个DOM元素,其中只包含文本,您可以对其进行整体更改,而不是逐行更改
要使更好地控制每一行,请通过使用pre操作
中包含的文本来构建一个新的DOM元素,pre包含许多div,每个div都包含一行文本。现在您可以掌握每一个div
这将帮助您为每一行包装div
注意:这需要jQuery
可选:添加空白:nowrap
,以防止换行
为什么要这样做
因为如果只有
,它将是一个DOM元素,其中只包含文本,您可以对其进行整体更改,而不是逐行更改
为了更好地控制每一行,可以通过操纵
中包含的文本来构建一个新的DOM元素,其中pre包含许多div,每个div都包含一行文本。现在你可以掌握每一个div你能详细说明你的问题吗你提供了一些代码吗?你对单行的确切意思是什么?这是某种代码行吗?也让我们知道你做了哪些工作?@NileshMahajan-我在我的帖子中添加了更多信息。我不确定没有JavaScript这是可能的。我不确定你想要什么,但关于pre:first of type
或pre:nth of type
?@dippas-第一种类型
和第n种类型
非常适合列表或表格,但不适合原始文本。你能详细说明你的问题吗。例如,你能提供一些代码吗?你对单行的确切意思是什么?这是某种类型的代码吗?也让我们知道你做了哪些工作?@NileshMahajan-我在我的帖子中添加了更多信息。我很抱歉不确定不使用JavaScript是否可行。不确定您想要什么,但是pre:first of type
或pre:nth of type
?@dippas-first of type
和nth of type
非常适合列表或表格,但不适合原始文本。
#pre div:hover {
background: #ff0;
}
function PreHover() {
var output = '';
var preBox = document.getElementById('raw');
var txt = preBox.innerHTML.split('\n');
for(var x=0;x<txt.length-1;x++) {
output = output + '<div>'+txt[x]+'</div>';
}
preBox.innerHTML = output;
}
var txt = $('pre').html().split("\n");
var output = "";
for(var x=0;x<txt.length-1;x++)
output = output + "<div>"+txt[x]+"</div>";
}
$('pre').html(output);
pre div:hover { background-color: rgba(0,0,0,0.2); }