0

admin我的项目主题,可以被用户覆盖。他们几乎没有选择更改 css 。当他们定义自定义 css 时,他们输入textarea. 它将覆盖当前布局主题。大多数情况是背景颜色、阴影的变化。如下图所示

css 文本区域

如何验证在自定义 css textarea 中输入的文本是有效的 css 文本?请有任何建议。

4

2 回答 2

1

我已使用以下代码更正了问题。

$request = new \Zend\Http\Request();

$request->setUri('http://jigsaw.w3.org/css-validator/validator');
$request->setMethod('GET');
$request->getQuery()
        ->set('profile', 'css3')
        ->set('output', 'soap12')
        ->set('text', $_POST['custom_css'] );


$client     = new \Zend\Http\Client();
$response   = $client->dispatch(  $request );
$bodyXML    = $response->getBody() ;

并使用解析响应xmlDOMDocument

$domParser = new \DOMDocument( $bodyXML );
$domParser->loadXML( $bodyXML );

$errorCountNode = $domParser->getElementsByTagNameNs (
        'http://www.w3.org/2005/07/css-validator',
        'errorcount'
) ;

$errorCount = (int) $errorCountNode->item(0)->nodeValue;

if ( $errorCount >0 ){
    echo  'Custom css is not valid';
}

希望这个答案能帮助有同样问题的人

于 2013-05-17T10:48:00.963 回答
0

w3.org有专门用于此的 API:

http://jigsaw.w3.org/css-validator/api.html

这是什么?我需要吗?

W3C CSS Validation Service 是由 W3C 创建的免费软件,用于帮助 Web 设计人员和 Web 开发人员检查级联样式表 (CSS)。它可以在网络上的这个免费服务上使用,也可以下载并用作 java 程序,或作为 Web 服务器上的 java servlet。

你需要它吗?如果您是 Web 开发人员或 Web 设计师,此工具将是一个宝贵的盟友。它不仅会将您的样式表与 CSS 规范进行比较,帮助您发现 CSS 的错误、拼写错误或错误使用,它还会告诉您 CSS 何时会在可用性方面带来一些风险。

于 2013-05-17T09:29:47.357 回答