CSS 2.1 に関する IE の通常のバグを修正しようとしており、要素のスタイル プロパティを変更して、カスタムのテキスト配置スタイルを追加する方法が必要です。
現在jQueryでは、次のようなことができます
$(this).width() or $(this).height()
しかし、この同じアプローチで text-align を変更する良い方法を見つけることができないようです。
アイテムには既にクラスがあり、そのクラスでテキスト整列を設定してもうまくいきません。クラスが定義された後、この要素に text-align CSS 属性を追加することは可能ですか?
私はこのようなものを持っています
$(this).css("text-align", "center");
幅を調整した直後、これをfirebugで表示した後、スタイルに設定されているプロパティは「幅」だけです。何か助けはありますか?
編集:
おっと-この質問に対する大きな反応!当面の問題についてもう少し詳しく説明します。
jqGrid A3.5の js ソースを微調整して、カスタム サブグリッド作業を行います。微調整している実際の JS を以下に示します (上記の例で「これ」を使用して申し訳ありませんが、これをシンプルに保ちたかったのです)。簡潔)
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');
私は今日もこの問題に取り組み、この奇妙な問題について私の痛みを感じている人のために最終的な解決策を投稿します.