如何在pyquery中获得单独的CSS样式

时间:2011-02-16 22:58:25

标签: python css pyquery

您可以使用以下几种方法设置 css样式:

p = PyQuery('<p></p>')
p.css('font-size','16px')
p.css(['font-size'] = '16px'
p.css = {'font-size':'16px'}

很好,但如何获得 个人 css风格?

p.css('font-size') # jquery-like method doesn't work
[<p>]
p.css['font-size'] # pythonic method doesn't work!
[<p>]
p.css.font_size # BeardedO's suggestion.
[<p>]
p.attr('style')    # too much information.
'font-size: 16px; font-weight: bold'

这看起来很奇怪,不方便,不精致和unpython!前两个中的一个应该返回样式文本,当然?

有没有办法单独使用单个css样式而不使用split()这样的工具?

3 个答案:

答案 0 :(得分:1)

p.css.font_size

这有用吗?

答案 1 :(得分:1)

您可以拆分字符串并将其转换为字典。

答案 2 :(得分:1)

从您的评论中可以看出,您已经想到了这一点,但PyQuery不提供此功能。

css方法(pyquery.py中的第824行)只设置属性而无法检索, 是一种耻辱。虽然,鉴于PyQuery不使用样式表,检索CSS的实用程序无论如何都是有限的。

手动排序p.attr(style)的结果似乎是目前最好的方法。如果只有一个参数传递给css方法,我想看一个检索css值的选项,但我们会看到。