CSS 2.1に関する通常のIEのバグを修正しようとしていますが、要素のスタイルプロパティを変更して、カスタムのテキスト配置スタイルを追加する方法が必要です。
現在jQueryでは次のようなことができます
$(this).width() or $(this).height()
しかし、これと同じアプローチでテキストを変更する良い方法を見つけることができないようです。
アイテムにはすでにクラスがあり、運が悪ければそのクラスにtext-alignを設定しました。クラスが定義された後、この要素にtext-align CSS属性を追加することは可能ですか?
私はこのようなものを持っています
$(this).css("text-align", "center");
幅を調整した直後、これをFirebugで表示した後、スタイルに設定されているプロパティは「width」のみであることがわかります。何か助けはありますか?
編集:
おっと-この質問への大きな回答!手元の問題に関するもう少し詳細:
jqGrid A3.5のjsソースを調整して、カスタムサブグリッド作業を実行しています。調整している実際のJSを以下に示します(上記の例で「this」を使用して申し訳ありませんが、これをシンプルに保ちたいと思いました。簡潔)
var subGridJson = function(sjxml, sbid) {
var tbl, trdiv, tddiv, result = "", i, cur, sgmap,
dummy = document.createElement("table");
tbl = document.createElement("tbody");
$(dummy).attr({ cellSpacing: "0", cellPadding: "0", border: "0" });
trdiv = document.createElement("tr");
for (i = 0; i < ts.p.subGridModel[0].name.length; i++) {
tddiv = document.createElement("th");
tddiv.className = "ui-state-default ui-th-column";
$(tddiv).html(ts.p.subGridModel[0].name[i]);
$(tddiv).width(ts.p.subGridModel[0].width[i]);
trdiv.appendChild(tddiv);
}
tbl.appendChild(trdiv);
}
私は(提供された回答から)以下の両方を試しましたが、運がありませんでした。
$(tddiv).width(ts.p.subGridModel[0].width[i]).attr('style', 'text-align: center');
そして
$(tddiv).width(ts.p.subGridModel[0].width[i]).css('text-align', 'center');
私は今日もこの問題に取り組み続け、この奇妙な問題について私の痛みを感じている人のために最終的な解決策を投稿します。