htmlのテーブル行を強制的に1行にするCSS/Javascript
質問
次のようなHTMLのテーブルがあります。
-------------------------------------------------
|Column 1 |Column 2 |
-------------------------------------------------
|this is the text in column |this is the column |
|one which wraps |two test |
-------------------------------------------------
しかし、私はオーバーフローを非表示にしたいのです。その理由は、テキストに詳細へのリンクが含まれており、"wrapping" があると、レイアウトで多くのスペースを浪費してしまうからです。このようにする必要があります (列やテーブルの幅を広げないでください。そうしないと、画面外に出てしまうか、水平スクロール バーが作成されるためです)。
-------------------------------------------------
|Column 1 |Column 2 |
-------------------------------------------------
|this is the text in column |this is the column |
-------------------------------------------------
これを実現するために、いろいろなCSSのテクニックを試してみましたが、うまくいきません。Mootablesは、これができる唯一のものです。 http://joomlicious.com/mootable/ というのを見つけたのですが、どうやるのかがわかりません。CSSやJavascriptを使用して独自のテーブルでこれを行う方法、またはMootablesがそれを行う方法を知っている人はいますか?
サンプルHTMLです。
<html><body>
<table width="300px">
<tr>
<td>Column 1</td><td>Column 2</td>
</tr>
<tr>
<td>this is the text in column one which wraps</td>
<td>this is the column two test</td>
</tr>
</table></body></html>
どのように解決するのですか?
CSSプロパティを使用する white-space: nowrap と overflow: hidden をtdに追加してください。
更新情報
あなたのコメントを見て、私は何を考えていたのかわからない、私はそれを行う方法を忘れてしまったので、何度もこれをやっている。これは、私の場合、ほとんどのブラウザでうまく機能するアプローチです...td を拘束しようとするのではなく、td の内部に div を使用して、オーバーフローのインスタンスを処理します。これは、td にスタイルを設定するのではなく、padding、margin、背景色などを div に追加できるという素晴らしい副次的効果があります。
<html>
<head>
<style>
.hideextra { white-space: nowrap; overflow: hidden; text-overflow:ellipsis; }
</style>
</head>
<body>
<table style="width: 300px">
<tr>
<td>Column 1</td><td>Column 2</td>
</tr>
<tr>
<td>
<div class="hideextra" style="width:200px">
this is the text in column one which wraps</div></td>
<td>
<div class="hideextra" style="width:100px">
this is the column two test</div></td>
</tr>
</table>
</body>
</html>
おまけに、IEはブラウザ特有のtext-overflow:ellipsisというスタイルを使って、オーバーフローの場合に省略記号を配置するようになっています。という方法があります。 はFireFoxでも同じように を自動的に実行する方法もありますが、私自身はテストしていません。
更新情報2
私は この切り捨てコード を使い始めたのですが、これはFireFoxでもきちんと動作します。
関連
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] jQueryでテーブルの行を追加する
-
[解決済み] JavaScriptで二重引用符と単一引用符はいつ使うべきですか?
-
[解決済み] スクロールバーを隠すが、スクロールはできる状態
-
[解決済み] CSSコンテンツによるHTMLエンティティの追加
-
[解決済み] CSSでリストアイテムの改行を防止する方法
-
[解決済み】テーブルセル内のテキストを折り返さない方法
-
[解決済み] React js 親コンポーネントから子コンポーネントの状態を変更する
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] V8 Javascript エンジンのスタンドアロン実行
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] jqueryでdivの要素がオーバーフローしていないかチェックする
-
[解決済み] jQueryの$という記号の意味は何ですか?
-
[解決済み] jQueryで入力ファイルが空かどうかをチェックする方法
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] Chromeのwebkitインスペクタで「Unsafe JavaScript attempt to access frame with URL...」というエラーが継続的に発生する。
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] querySelectorAllがない場合、ライブラリを使用せずに属性で要素を取得する?
-
[解決済み] JavaScriptの文字列プリミティブとStringオブジェクトの違いは何ですか?
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
-
[解決済み] JavaScriptでDIVを表示・非表示にするには?