You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
955 B
44 lines
955 B
<?php
|
|
|
|
namespace Sabberworm\CSS\RuleSet;
|
|
|
|
use Sabberworm\CSS\Property\AtRule;
|
|
|
|
/**
|
|
* A RuleSet constructed by an unknown @-rule. @font-face rules are rendered into AtRuleSet objects.
|
|
*/
|
|
class AtRuleSet extends RuleSet implements AtRule {
|
|
|
|
private $sType;
|
|
private $sArgs;
|
|
|
|
public function __construct($sType, $sArgs = '', $iLineNo = 0) {
|
|
parent::__construct($iLineNo);
|
|
$this->sType = $sType;
|
|
$this->sArgs = $sArgs;
|
|
}
|
|
|
|
public function atRuleName() {
|
|
return $this->sType;
|
|
}
|
|
|
|
public function atRuleArgs() {
|
|
return $this->sArgs;
|
|
}
|
|
|
|
public function __toString() {
|
|
return $this->render(new \Sabberworm\CSS\OutputFormat());
|
|
}
|
|
|
|
public function render(\Sabberworm\CSS\OutputFormat $oOutputFormat) {
|
|
$sArgs = $this->sArgs;
|
|
if($sArgs) {
|
|
$sArgs = ' ' . $sArgs;
|
|
}
|
|
$sResult = "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{";
|
|
$sResult .= parent::render($oOutputFormat);
|
|
$sResult .= '}';
|
|
return $sResult;
|
|
}
|
|
|
|
}
|