0

スタイルシートが添付された XML ドキュメントを Web ブラウザに表示しています。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet type="text/css" href="abc.css"?>
<myxml xmlns:xhtml="http://www.w3.org/1999/xhtml">
    <para>I wish i was editable</para>
    <xhtml:script type="text/javascript" src="abc.js"/>
</myxml>

xhtml 名前空間宣言と xhtml:script タグを使用すると、javascript を実行できます。

私がやりたいことは、このドキュメント コンテンツ内の XHTML 以外の任意の要素を編集可能にすることです。(実際には、それらは別の名前空間にあります)

@contentEditable="true" を明示的に追加しても (つまり、Javascript に頼らずに)、コンテンツは実際には編集できません (Firefox 3.0.4 の場合)。

現在のブラウザで編集することはできますか? ( XHTML 1.0 Transitional ドキュメントの<div contentEditable="true">Edit me > には問題はありませんでした)</div

このドキュメント (Firefox) では、xhtml:div を編集することさえできません。それができれば、前に進む道が開けるかもしれません。

4

3 に答える 3

1

Firefox 3 では、@content-editable="true" は、コンテンツ タイプが text/html の場合にのみ、関連する要素を編集可能にします (ローカル ファイル名が .html で終わる場合にも発生します)。

コンテンツ タイプ app/xhtml+xml または text/xml (.xhtml または .xml で終わるローカル ファイル名) では機能しません。

この機能強化をログに記録しました: https://bugzilla.mozilla.org/show_bug.cgi?id=486931

于 2009-04-06T22:46:21.063 に答える
0

Firefox は、XHTML 仕様を厳密に適用する数少ないブラウザーの 1 つです。したがって、要素を編集可能にするには、contenteditable属性を として指定する必要がありますtrue。属性名全体が小文字であることに注意してください。あなたの例では、編集可能な最初の「E」が大文字になっています。

言及すべきもう 1 つの癖は、IE(6,7,8) がまったく逆の動作をすることです。要素を IE で編集可能にするには、正確に追加する必要contentEditable="true"があります。なんらかの理由で、contenteditable="true"(大文字の他のバリエーションと同様に) 機能しません。

于 2009-10-15T06:13:04.370 に答える
0

次の doctype を使用すると、html/xhtml とは異なる要素で contentEditable が機能します (Firefox と Chrome でテスト済み)。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                      "http://www.w3.org/TR/html4/loose.dtd">

および .html ファイル拡張子 (.xml ではなく)。

html 要素 (head、body、div、p など) を含める必要はまったくありません。

ただし、css は適用されません (私の xml が名前空間にある場合、doctype を考えると、これは理にかなっていると思います!)。

エレガントなソリューションではありません。

于 2009-04-04T03:01:08.010 に答える