xprt64/php-css

此包的最新版本(dev-master)没有可用的许可证信息。

通过 CSS 选择器从 DOMDocument 中选择元素

维护者

详细信息

github.com/xprt64/php-css

源代码

安装: 15

依赖: 0

建议: 0

安全: 0

星标: 1

关注者: 2

分支: 117

dev-master 2015-12-18 06:54 UTC

This package is not auto-updated.

Last update: 2024-09-26 19:41:20 UTC


README

PHP Css

一个用于解析 CSS 并从 DOMDocument 中选择元素的 PHP 库

包含来自 github.com/tj/php-selector(选择器部分)的代码

  • Composer 支持

  • 包含 PHPUnit 测试

示例

给定以下 PHP 代码

$dom	=	new \DOMDocument();

$dom->loadHTML(<<<HTMLCODE
<html>
	<head>
		<style type="text/css">
			div.class1
			{
				color: #ff000;
			}
		</style>
		<style type="text/css">
			p.class2
			{
				text-align:center;
			}
			/* a comment the must be ignored by the parser */	
			/* the next , intentionally put here, the parser should ignore it */
			,p span
			{
				font-weight:bold;
			}
			a,
			span.link
			{
				cursor: pointer;
			}
		</style>
 	</head>
	<body>
		<div class="class1">test1</div>
		<p class="class2 class1">test1 <span class="link">in span</span></p>
   </body>
</html>
HTMLCODE
);

选择元素

选择如下元素

Selector::selectElements("div", $dom)

这应该返回一个包含一个元素的 DOMNodeList。

Selector::selectElements(".class1,.class2", $dom)

这应该返回一个包含 2 个元素的 DOMNodeList。

应用 CSS 样式

$parser = new	Parser($dom);

$parser->loadRulesFromDom();

$span = $this->dom->getElementsByTagName('span')[0];

$span_styles = $parser->getStylesFromCssRules($span);

样式应包含 2 个 CSS 样式

font-weight:bold;
cursor: pointer;

*

贡献

*

更多信息

许可证

(MIT 许可证)

版权所有 © Constantin GALBENU <xprt64@gmail.com>

特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许将软件提供给软件提供方,以便他们可以进行上述操作,但须遵守以下条件

上述版权声明和本许可声明应包含在软件的副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,无论是明示的还是隐含的,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担责任,无论这些责任是基于合同、侵权或其他原因,这些责任源于、因之产生或与之相关,包括但不限于软件或其使用或其他操作。