1

私はphp domクラスを使って自分のウェブサイトを構築しようとしています。次のように本文に div を追加すると、本文のあるドキュメントが既にあると仮定します。

$div = $document->createElement('div');
$document->getElementsByTagName('body')->item(0)->appendChild($div);

複数のエントリを持つこの要素に「スタイル」属性を設定する方法はありますか? たとえば、次のようになります。

<div style="top: 40px; left: 60px;"></div>

私はこれができることを知っています:

$div->setAttribute('style', 'top: 40px; left: 60px;');

しかし、正規表現を介して値を解析せずに、スタイルの各側面にアクセスできるようにしたいと考えています。これは、コードの他の部分で 40px の値に簡単にアクセスしたいためです。

4

3 に答える 3

3

XML 属性は、名前と値のペアを要素に関連付けるために使用されます。DOM は、そこに CSS を配置したことを認識していません (できません)。これは、DOM が XHTML だけでなく、任意の XML アプリケーション用であるためです。CSS は別のドメインです。したがって、手動で解析する必要があります。

あるいは、http://querypath.orgを見てください。スタイル属性の直接の追加と読み取りをサポートしています。

于 2012-05-23T07:47:40.777 に答える
2

次のような(自分で書いた)構造はどうですか:

$div = new Div();
$div->addStyle('top:', '40px;');
$div->addStyle('left:', '60px;');
print_r($div->Style)//for access of all style elements in case you need to modify them
$document->addElement($div);
//in case you need to modify an already added element, just
$document->Elements[17]; //or something similar

うまくいけば、あなたは何か役に立つものを見つけるでしょう:)

于 2012-05-23T07:48:12.260 に答える
-1

setAttribute で現在の要素のクラスを設定し、カスタム css を style.css ファイルに追加します

于 2017-02-17T09:19:39.980 に答える