2016-02-19 55 views
7

PhantomJS支持現代Flex嗎?如果我運行此文件:PhantomJS上的Flex

$ cat x.js 
var $ = require('jquery'); 
$('<div/>', {id: 'x'}).appendTo($('body')); 
var x = $('#x'); 
x.css('color', 'red'); 
console.log('color: ' + x.css('color')); 
x.css('flex', '0 0 0px'); 
console.log('css: ' + x.css('flex')); 

可以看到.css()爲柔性工作正常顏色,但不是。

$ phantomjs x.js 
color: rgb(255, 0, 0) 
css: undefined 

我也嘗試了一些變體:-webkit-flex-moz-box-flex-ms-flex,所有這些都產生相同的結果。好奇地,-webkit-box-flex返回0而不是undefined,但這似乎是錯誤的。

我與運行:

$ phantomjs --version 
1.9.8 

回答

2

考慮到PhantomJS 1.x的引擎現在已經超過5歲。是的,flexbox不受支持。 Modernizr報告flexboxlegacy支持。使用PhantomJS 2.x,您可以獲得support for flex

+0

好吧......它花了一些時間在OSX上安裝v2。 npm版本沒有工作,但幸運的是自制版本的工作(我現在在2.1.1),是的!它支持flex。是啊! – ekkis

+4

我會說**有限**彈性支持。原來居中不能正常工作:https://github.com/ariya/phantomjs/issues/12367 –

+2

也flex-wrap:https://github.com/ariya/phantomjs/issues/14365 –