【发布时间】:2021-05-17 01:37:02
【问题描述】:
我有以下代码。它只是使python脚本格式化,颜色使用highlight.js。
hljs.highlightAll();
function clicked(){
if(document.getElementById("code").style.display === "block"){
document.getElementById("code").style.display = "none"
}else{
document.getElementById("code").style.display = "block"
}
}
html{
text-align: center;
}
#code{
display: none;
text-align: left;
width: 150px; /* removing this line will center */
}
<!DOCTYPE html>
<html lang="en">
<head>
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.7.2/build/styles/atom-one-dark.min.css"
/>
<script src="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.7.2/build/highlight.min.js"></script>
</head>
<body>
<button onclick="clicked()">Show Code</button>
<pre id="code"><code>print('hello world')</code></pre>
</body>
</html>
点击按钮后,代码不会居中。但是,如果您取消注释更改 CSS 文件中宽度的行,它将居中。为什么我更改宽度时它不居中?
【问题讨论】:
-
因为文本只会在给定的框中居中。如果您声明一个固定宽度而不是默认自动。那么 etxt 的包装元素将从左侧开始具有固定宽度,而不是跨越整个宽度
标签: javascript html css highlight.js