私は1つの行に2つのテーブルを持っています - 1つは左にあり、もう1つは右にあります。それは2つ以上のテーブルになる可能性があり、私は常に前の2つのテーブルの次の2つのテーブルを見たいと思います。また、正しい表が時々現れることができないという状況もありえます。 2つのテーブル、または1つだけ(次のテーブルが表示されない場合)次のテーブルが確実に下に置かれるようにするにはどうすればよいですか?常に前の列の下にテーブルを置く
これは現時点のサンプルコードとスクリーンショットです.2番目のテーブルの間に11個のbrを配置してからOKに見えますが、これは良い方法ではありません。特定のしたがって、このアプローチは正しいとは言えません。見てみましょう:このコードは、Visual Basicのコードである私のコードから生成され
:
<br></br>
<table border="3" cellpadding="10" cellspacing="10" align="left" style="font-size:12pt;width:30%;">
<tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Marke::</td><td width="60%" style="text-align:left;padding-left:20px;">JUSThome
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Serie::</td><td width="60%" style="text-align:left;padding-left:20px;">op
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Nummer::</td><td width="60%" style="text-align:left;padding-left:20px;">10.1018.1
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Farbe::</td><td width="60%" style="text-align:left;padding-left:20px;">Zur auswahl
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material::</td><td width="60%" style="text-align:left;padding-left:20px;">Ekoleder
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material Types::</td><td width="60%" style="text-align:left;padding-left:20px;">Soft
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material Attributes::</td><td width="60%" style="text-align:left;padding-left:20px;">Soft 1
</td>
</tr>
</table><table border="3" cellpadding="10" cellspacing="10" align="right" style="font-size:12pt;width:70%;">
<tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Hohe::</td><td width="60%" style="text-align:left;padding-left:20px;">1
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Breite::</td><td width="60%" style="text-align:left;padding-left:20px;">2
</td>
</tr>
</table>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<br></br>
<table border="3" cellpadding="10" cellspacing="10" align="left" style="font-size:12pt;width:30%;">
<tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Marke::</td><td width="60%" style="text-align:left;padding-left:20px;">JUSThome
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Serie::</td><td width="60%" style="text-align:left;padding-left:20px;">op Farbe: Weiss
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Nummer::</td><td width="60%" style="text-align:left;padding-left:20px;">10.1018.2
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Farbe::</td><td width="60%" style="text-align:left;padding-left:20px;">Weiss
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material::</td><td width="60%" style="text-align:left;padding-left:20px;">Ekoleder
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material Types::</td><td width="60%" style="text-align:left;padding-left:20px;">Soft
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Material Attributes::</td><td width="60%" style="text-align:left;padding-left:20px;">Soft 1
</td>
</tr>
</table><table border="3" cellpadding="10" cellspacing="10" align="right" style="font-size:12pt;width:70%;">
<tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Hohe::</td><td width="60%" style="text-align:left;padding-left:20px;">1
</td>
</tr><tr>
<td width="30%" style="vertical-align:top;text-align:left;padding-left:20px;color:white;background-color: #778899">Breite::</td><td width="60%" style="text-align:left;padding-left:20px;">2
</td>
</tr>
</table>
はscreenshootsを参照してください。しかし、あなたのサポートによって、私のコードに新しい属性を追加して、その問題をハンドリングすることができました。
'***************************** FIRST TABLE *****************************
html.AddStyleAttribute("font-size", "12pt")
html.AddStyleAttribute(HtmlTextWriterStyle.Width, "30%")
'Border
html.AddAttribute(HtmlTextWriterAttribute.Border, "3")
html.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "10") 'spaces between inner td content
html.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "10") 'spaces between td's
html.AddAttribute(HtmlTextWriterAttribute.Align, "left")
html.RenderBeginTag(HtmlTextWriterTag.Table) '---------------------------------------------------------------- TABLE
For Each item As KeyValuePair(Of String, List(Of String)) In dictionar
Dim attribute As String = item.Key
Dim attr_values As List(Of String) = item.Value
html.RenderBeginTag(HtmlTextWriterTag.Tr) '----------------------------------------------- TR (row)
'two below statments will do that text in 1st td will be always on left in the corner
html.AddStyleAttribute("vertical-align", "top")
html.AddStyleAttribute("text-align", "left")
'space from left for text
html.AddStyleAttribute("padding-left", "20px")
'gray background color
html.AddAttribute("style", "background-color: #778899")
html.AddAttribute("width", "30%") 'wystarczy dla jednej td, dla prawej nie trzeba
html.AddStyleAttribute("color", "white")
html.RenderBeginTag(HtmlTextWriterTag.Td) '--------------------------------- TD (attribute)
html.Write(attribute & ":")
html.RenderEndTag() '--------------------------------- /TD
'space from left td
html.AddAttribute("width", "60%") 'wystarczy dla jednej td, dla prawej nie trzeba
html.AddStyleAttribute("text-align", "left")
html.AddStyleAttribute("padding-left", "20px")
html.RenderBeginTag(HtmlTextWriterTag.Td) '--------------------------------- TD (values)
For Each sentence In attr_values
html.WriteLine(sentence)
If attr_values.Count > 1 Then
html.RenderBeginTag(HtmlTextWriterTag.Br)
html.RenderEndTag()
End If
Next
html.RenderEndTag() '--------------------------------- /TD
html.RenderEndTag() '---------------------------------------------- /TR
Next
html.RenderEndTag() '---------------------------------------------------------------- /TABLE
'***************************** FIRST TABLE *****************************
'***************************** SECOND TABLE *****************************
If wymiary.Count > 0 Then
html.AddStyleAttribute("font-size", "12pt")
html.AddStyleAttribute(HtmlTextWriterStyle.Width, "70%")
'Border
html.AddAttribute(HtmlTextWriterAttribute.Border, "3")
html.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "10") 'spaces between inner td content
html.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "10") 'spaces between td's
html.AddAttribute(HtmlTextWriterAttribute.Align, "right")
html.RenderBeginTag(HtmlTextWriterTag.Table) '---------------------------------------------------------------- TABLE
For Each item As KeyValuePair(Of String, List(Of String)) In wymiary
Dim attribute As String = item.Key
Dim attr_values As List(Of String) = item.Value
html.RenderBeginTag(HtmlTextWriterTag.Tr) '----------------------------------------------- TR (row)
'two below statments will do that text in 1st td will be always on left in the corner
html.AddStyleAttribute("vertical-align", "top")
html.AddStyleAttribute("text-align", "left")
'space from left for text
html.AddStyleAttribute("padding-left", "20px")
'gray background color
html.AddAttribute("style", "background-color: #778899")
html.AddAttribute("width", "30%")
html.AddStyleAttribute("color", "white")
html.RenderBeginTag(HtmlTextWriterTag.Td) '--------------------------------- TD (attribute)
html.Write(attribute & ":")
html.RenderEndTag()
'--------------------------------- /TD
'space from left td
html.AddAttribute("width", "60%")
html.AddStyleAttribute("text-align", "left")
html.AddStyleAttribute("padding-left", "20px")
html.RenderBeginTag(HtmlTextWriterTag.Td) '--------------------------------- TD (values)
For Each sentence In attr_values
html.WriteLine(sentence)
If attr_values.Count > 1 Then
html.RenderBeginTag(HtmlTextWriterTag.Br)
html.RenderEndTag()
End If
Next
html.RenderEndTag() '--------------------------------- /TD
html.RenderEndTag() '---------------------------------------------- /TR
Next
html.RenderEndTag() '---------------------------------------------------------------- /TABLE
End If '---------------------------------------------------------------- /TABLE
'***************************** SECOND TABLE *****************************
http://getbootstrap.com/css/#gridにアクセスし、グリッドシステムを確認してください。それはあなたが望むものを与えるはずです。また、あなたはHTMLで間違っている。テーブル属性は使用せず、代わりにCSSスタイルを使用し、DRYを使用してください。 –
@Stephan Zeng hi Stephan - これは外部プログラムからいくつかのWebページに配置されるので、このようにしなければなりません。私は私のやり方でそれをやろうとしています。手伝ってくれますか? –
このようなものが必要ですか?https://jsfiddle.net/6hv7u9Ls/ ?? –