Cheerio .css()总是返回null?

我最近开始和Cheerio一起使用NodeJS 。 我得到一个外部URL,并加载与Cheerio的HTML。

我偶然发现了一个问题,每当我试图获取一个元素的CSS属性, $.css([property])总是返回null ,无论我给它什么select器或属性。

我在做什么:

 var express = require('express'); var fs = require('fs'); var request = require('request'); var cheerio = require('cheerio'); app = express(); app.get('/something_something', function (req, res) { request('some_url', function (error, response, html) { var $ = cheerio.load(html) // console.log($('body').css('width')); } } 

无论使用哪种select器或CSS属性,这将始终logging为null 。 (请记住,我已经过度检查了jQuery对象$(“body”)是否存在,并且无论这个URL是什么都会发生)

另外,如果我设置$('body').css('width', '100px') ,然后console.log($('body').css('width')) ,它将显示100px。 所以我猜这不是css()方法本身,但Cheerio获取/不获取元素样式

*其他Cheerio方法的工作,如text()val()remove()

我仍然是一个NodeJS / Cheerio新手,所以任何帮助,解释,build议或信息将是金,

Cheerio!

Cheerio是一个DOM界面。 它parsingHTML并允许您访问节点及其属性。 这不是一个虚拟浏览器,它试图模拟一个真正的浏览器的HTML视图。 由于它不做任何渲染或模拟渲染,所以它不能告诉你只有在涉及渲染问题时才能确定的事情(如DOM元素的尺寸)。