2

アプリのフレームに丸みを帯びた角を使用するアプリを作成しようとしています。RoundedLinePanel を持つパッケージをGoogleコードで見つけましたが、うまくいくようです...ちょっと。

私はいくつかのことを疑問に思っています。これは、GWT で角の丸い div を作成するために人々が使用しているものですか? リリース ノートによると、ほぼ 1 年間変更されていません。

また、この div の固定高さを設定できないようです (setHeight は、内側の div ではなく、ラッパー div に設定します)。固定高アプリを持っているので、私には役に立ちません。

最後に、GWT で角の丸い div を作成するためのより良いメカニズムを提案できる人がいれば、私はすべて耳にします。

4

2 に答える 2

4

CSS 3 を使用して角を丸くする美しい方法があります (したがって、これは IE<=8 では機能しませんが、IE9 開発者プレビューでは機能します)。関連するスタイルを確認するには、http://css3please.com/をご覧ください。border-radius(または-moz-border-radiusまたは-webkit-border-radiusプロパティ)を使用するのはかなり簡単です。GWT では、丸みを帯びた境界線にしたい要素に必要なスタイル クラス名を追加するだけで完了です。もちろん、従来のブラウザーで丸みを帯びた角をサポートすることはより困難ですが、それを行う必要はありますか?

従来のブラウザーの場合、実際のコンテキストによっては、これは非常に困難です。境界線には常に画像が含まれます。ボックスの境界をマスクする画像を作成する必要があります。機能するのは、この回答で説明されているトリックです。これを GWT で使用するには、uibinder または htmlelement を使用するか、独自のウィジェットを作成します。技術のより広範な説明は、ここでも見つけることができます。

于 2010-04-07T08:27:41.343 に答える
3

最も一般的に見られる解決策である decoratorPanel は、現在のバージョンの GWT では推奨されていません (たとえば、GWT 2.1.1 で使用すると、GWT が必要とする doctype である decoratorPanel との間で混乱が生じることになります)。 、および IE、特に IE8)。

必須の GWT 2.1.1 doctype (!doctype html) は、IE8 で人気のある rounded-corners.htc も無効にします。

CSS3 シリーズの角丸プロパティを使用してクラスを追加できますが、9 より前のバージョンの IE では機能しません。

JQuery やその他の JavaScript の丸みを帯びた角は、ネイティブの GWT js と競合する可能性が高いため、可能な解決策としてそれらを放棄しましたが、個人的にはこれらのテストは行いませんでした。

真にクロスブラウザーに準拠し、一貫した外観を作成するために、丸みを帯びた角の画像を使用する必要がありました.

于 2011-02-15T19:02:41.783 に答える