CSS 真是让人抓狂,真心求助 CSS 大佬

352 天前
 lete

口水话

事情是这样的,在五一假期的时候我写了一个 Hexo 博客主题 《五一假期,我花了 5 天写了个 Hexo 博客主题》,现在仍然在持续更新与调整(beta 阶段),直到今天我准备把我的博客迁移到新主题时,我发现一个非常奇怪的问题。挠了一下午的头,仍然无法解决一个 css 问题,一直折腾到了现在的晚上 9 点钟,所以在此像询问一下各位 css 大佬能帮我看看这个问题吗?

调 css 是真的痛苦,修好一个地方的样式,另一个地方的样式就崩了,导致我陷入了循环(我 css 太菜了)

问题

如果一篇文章内有代码块,且这个代码块中的代码单行长度(指的是水平长度)比较长(超出了页面的宽度显示范围),这种情况一般来说会有两种解决办法超出时x 轴显示滚动条自动换行显示,我采用的是显示滚动条。到目前为止没有任何问题,一切正常,在电脑设备上文章主体是正常的,但如果是小屏幕的手机设备就会出现问题

我找到的一个线索是一个 pre 标签,你可以使用这个代码在浏览器控制台快速定位到这个标签

document.querySelector("body > div.container > div > main > article > div.article-content > figure > table > tbody > tr > td.code > pre")

我刚刚找到一个解决办法,就是给 main 标签加一个 css 属性 box-sizing: border-box; 能解决,但还是希望各位大佬能提供一些其它解决办法

如果有大佬解决了这个问题,欢迎到 Lete114/Hexo-Theme-MengD 提交 PR ,或者评论回复我,再此先谢过各位大佬

1979 次点击
所在节点    前端开发
11 条回复
lete
352 天前
刚刚找到一个解决办法,就是给 main 标签加一个 css 属性 box-sizing: border-box; 能解决,但还是希望各位大佬能提供一些其它解决办法,在 V2EX 剩下的 1 分钟编辑的时间,我写了上去,不知道还有没有其它办法能解决。很想知道这种情况是怎么形成的,目前也不知道 ` box-sizing: border-box; ` 会不会有其它弊端
shuxhan
352 天前
.main-wrap main.main-width{box-sizing: border-box;}

盒子模型问题

一般我在新项目最开始会加一个 *{padding:0;margin:0;box-sizing: border-box;}
清除掉默认样式
ksc010
352 天前
额 你是不是在修改代码?
打开是亮色主题的,样式跟你截图的也不一样,想看下什么问题,修改了下样式,刷新下又变了。。。
randomstream
352 天前
.main-width {overflow: auto}
lete
352 天前
@ksc010 没改代码,我部署的是在仓库的 docs 分支
lete
352 天前
@shuxhan 谢谢大佬
lete
352 天前
@randomstream 这个不行
ciaoca
352 天前
bug 文章的内容含有个 figure 标签,class 属性包含 highlight
盲猜是用了个代码高亮插件,这个 figure.highlight 自带了 margin 边距,要取消要么修改插件源码,或者自己写一条覆盖它
randomstream
352 天前
不是实现这种效果吗? 添加 overflow: auto 或 hidden 后就这样 :lol
![fix]( )

@lete
a632079
352 天前
盒子模型问题,强烈建议任何项目开始前导入个 normalize.css 来完成所有浏览器 CSS 的标准样式重置。
content-box 的坑很大,强烈建议使用 border-box 。
guozhigq
351 天前
我昨天部署的时候也发现了,自己在本地改的 CSS

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/939791

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX