SOに関する最初の質問
で検索結果ページを作成する必要がありますが、asp.net
いくつか問題があります。(「ボックス」ごとに)本の表紙の画像と本のタイトルが表示されます。
すべての画像が同じ高さではないことを知っているので、私はそれらを垂直に下に揃えることができるようにしたいと思います。私はウェブ上で本当に一生懸命検索し、display table / table-row/table-cellを使用していくつかの解決策を見つけました。
ListView
's GroupTemplate
(行として)および(セルとして)を使用して、すべてが正常に機能します。ItemTemplate
画像のみを表示したい場合-しかし-画像を下に垂直に配置し、本のタイトルを下に配置します(タイトルの下に「詳細」などのリンクを付けます) )。
自分の本のタイトルを画像と同じセルに入れることができなかったことを知っていると(タイトルが2行になり、デザインが再び壊れてしまうため...)、別の行が必要になると思います(私のように以下のコード)。2つの行を配置しても機能すると思いましたが、2つの異なるitemtemplates(1つは画像用、もう1つは彼の画像の下の別の行に配置されたテキスト用)を呼び出すことGroupTemplate
ができないようです。ListView
どんな助けでも大歓迎です、そして、あなたが他の選択肢を持っているならば、私は提案に開かれています。DataPager
私はそうする必要があることを覚えておいてListView
ください-私は思う-が行く唯一の方法です。
これが私のCSSです
#grid{
background: lightgreen;
border-spacing: 10px;
display: table;
}
#grid .row{display: table-row;}
#grid .result{
display: table-cell;
vertical-align: bottom;
}
これが私の検索結果のListView
下書きです(画像は良いですが、くだらない「テスト」テキストのみです)
<asp:ListView ID="lvSearchResults" runat="server" OnPagePropertiesChanged="DataPager_PreRender" OnPagePropertiesChanging="DataPager_PreRendering" GroupItemCount="5" >
<LayoutTemplate>
<div id="grid">
<asp:PlaceHolder ID="groupPlaceholder" runat="server" />
</div>
</LayoutTemplate>
<GroupTemplate>
<div class="row">
<asp:PlaceHolder ID="itemPlaceholder" runat="server" />
</div>
<div class="row">
<asp:PlaceHolder ID="itemPlaceHolder1" runat="server" />
</div>
</GroupTemplate>
<ItemTemplate>
<div class="result">
<p><a href='<%# Container.DataItem.URI %>'><img src='<%# Container.DataItem.LesImages.Petite %>' alt="" /></a></p>
</div>
</itemtemplate>
<ItemTemplate>
<div class="result">
<p><a href='<%# Container.DataItem.URI %>'>test</a></p>
</div>
</itemtemplate>
</asp:ListView>
どうもありがとう、-エリック