Simplicityの特徴 › フォーラム › テーマファイルのカスタマイズに関する質問など › 「タイル」リストスタイル3列時にheightを揃える
- このトピックには7件の返信、2人の参加者があり、最後に
hidekichiにより11年、 2ヶ月前に更新されました。
-
投稿者投稿
-
-
2015年3月30日 12:48 PM #24989
Tecco
ゲストお世話になっております。
現在、simplicityのリストスタイル3列を使用してますが
タイトルの文字数が多く、2行になってしまう場合だけ、その分表示がずれます。(そういう仕様なので仕方ないですが)1行のタイトルのものに<br><br>で揃えられはするのですが、いまいち良い解決法ではない気がしてます。。。
なにか上手くタイルを揃える方法はありませんでしょうか?
ご教示いただけると助かります。
-
2015年3月30日 4:14 PM #25009
わいひらキーマスタータイルとはそういうものなので、そういった表示になるのはしょうがないのですが、どうしても揃える場合は、以下のようにすると良いかもしれません。
#main .masonry-brick{ height: 500px; } -
2015年3月30日 4:30 PM #25010
Tecco
ゲスト>タイルとはそういうものなので、そういった表示になるのはしょうがないのですが
ですよね。承知の上です(>_<)
上記のスタイルシートで対応したいと思います!
ありがとうございます!!
-
2015年3月30日 5:29 PM #25012
hidekichi
ゲスト参考情報として。以下のスクリプトを試してみたやつ→blazechariot(hostinger)
あまりよい方法ではないですが、$(function(){ $(".entry-content h2 a").each(function(){ var max = 24; var count = $(this).text(); if ( count.length >= max){ var str = count.slice(0,max); $(this).text(str + "..."); } }); });これで指定文字数(var max)でタイトル文字数を揃えることができますが、タイトルに日本語と英語が混在している場合が問題です。タイトルをうまくつけれればいいんですけどね。
あとはcssでmin-heightあたりを入れてみたりでサイズを揃えるとか。うーん、なんかいまいち。$(this).text(str + “…”); では、$(“.entry-content h2 a”)の文字列を指定文字で丸めた後「…」を入れて続きがあるというような表示にしています。Simplicityではマウスオーバーすればtitleに入ってる全文が表示されるので問題ないといえばそうなのですが…。
マウスオーバーしたらタイトル全文を表示するようにしても良いかも知れません。リンクのtitle属性を拾うとかで。
また、if〜の部分をswitchに変えて、任意の文字数の時、cssを操作して文字サイズを変更しても良いかも知れないのですが、あまりよい感じではないかも知れません。
heightを.entry-content h2 aに与えて、overflowとかでhiddenとかスクロールにするのも良いのかも。 -
2015年3月31日 4:23 PM #25105
hidekichi
ゲストマルチバイト、シングルバイト混合の時に対応したものを発見したので、先日のスクリプトに合わせて書いておきます。
(function($){ $.fn.cutString=function(options){ var defaults = { length: 20, ellipsisText: "..." }; var options = $.extend(defaults, options); return this.each(function(){ obj = $(this); var str = $.trim(obj.html()), strLen=str.length, optLen=options.length, len=0; function cut(){ for (var i=0; i<strLen; i++) { len += (str.charCodeAt(i) > 128) ? 2 : 1; if (len > optLen) return str.substring(0,i) + options.ellipsisText; } return str; } obj.html(cut()); }); }; })(jQuery); $(function(){ $(".entry-content h2 a").each(function(){ var max = 36; $(this).cutString({length: max}); }); $(".entry-content .entry-snippet").each(function(){ var max = 120; $(this).cutString({length: max}); }); });これで、entry-snippetの文字列を囲んでるブロックの高さをmin-heightとかで調節すればサイズが揃うのではないかと思います(※抜き出す文字数は要調整)。マルチバイトとシングルバイトを判断している部分はプラグイン化しているので別で読み込んでも可。子テーマjavscript.jsにコピペでもイケると思います。
マルチバイトとシングルバイトを判断している部分は、jquery multibyte stringより引用。
-
2015年3月31日 4:25 PM #25106
hidekichi
ゲストあぁ使い方書いてなかった。
$(“字数を丸めたいセレクタ”).each(function(){
})
-
2015年3月31日 4:28 PM #25107
hidekichi
ゲストうぉぉぉぉ、猫がenter押してもた
$(“字数を丸めたいセレクタ”).each(function(){
$(this).cutString({length: 字数});
})こんな感じでイケます。サンプルとして blazechariot(hostinger)で公開しています。min-heightやらheightやらは設定していません。
-
2015年3月31日 5:05 PM #25108
hidekichi
ゲスト今、色々試してみた所、サムネイルのサイズ(高さ)が小さいものはズレが生じるようです。
ここらから、サムネイルをある程度高さを持ったもので作成すれば良いかも知れません。
-
-
投稿者投稿
- フォーラム「テーマファイルのカスタマイズに関する質問など」には新規投稿および返信を追加できません。