首页 > 解决方案 > 在 python cssutils 包打开的 CSS 文件中找不到媒体查询规则

问题描述

我需要修改几个类似网页的 CSS 渲染样式,所以我打算打开每个 css 文件并修改它们的规则。

我尝试修改网页中的一个元素,使其不会随着屏幕大小的变化而消失,起源css规则是:

@media screen and (max-width: 768px):
.base-header .group-list.nav {
display: none; }

我想禁用display: none设置以使元素保持出现。

现在我将通过 cssutils 解析第一个 css 文件:

import csutils

stylesheet = cssutils.parseFile('global.css')

stylesheet.cssRules中,我在 下找不到display: none规则设置@media screen。但是我可以找到不在媒体查询下的其他规则设置。

如果我打开 css 文件open(),我可以看到媒体查询设置,但是返回的文件open()比较混乱,对我来说似乎很难编辑。

如何在 css 文件中找到媒体查询下的规则?或者有没有更好的方法来解决我的问题,而不使用 cssutils 中的解析方法?

感谢您的每一个建议!

标签: pythoncss

解决方案


我发现我可以通过传统的open()然后编辑文件方法来编辑文件。

如果我使用 Visual Studio Code 打开 css 文件然后自动格式化它,我可以打开生成的文件然后逐行编辑它。

但是,对于css文件我需要先将其格式化为逐行读取文件,否则css文件太乱而无法解析。我还没有找到解决这个问题的方法,BeatifulSoup 似乎对 CSS 解析问题没有帮助。


推荐阅读