HTML/CSS のどんな質問にも優しく答えるスレ 32
■ このスレッドは過去ログ倉庫に格納されています
0001Name_Not_Found
垢版 |
2018/03/14(水) 22:52:37.78ID:zpiIOMwj
ここは初心者からベテランまで、全ての人を対象に優しく答えるスレです

類似質問、重複質問、丸投げ大いに結構。HTML / CSS 関係の事なら何でもOK
分からない人は何回聞いても結構。質問するときはIDを出すためにメール欄を
age にすることをおすすめします。

回答してくれる方は優しい人のみ! 質問者に対して暴言を吐く人はこのスレを見るな!!
終わった話を蒸し返すやつは このスレにくるな!!!
自分で調べろという回答も禁止!!回答するかさもなくば何も書き込むな!!

質問側も節度あるレスで!質問前にスレ内を検索しましょう

■次スレについて
基本的にレスナンバー>>980を取った人(立てられない場合は次の宣言者)が立てて下さい
重複を避けるため、独断でスレ立てはせず必ず意思表示をしてから立てて下さい(>>980を取った場合も)
立てられない事が予め分かっている場合は、>>980付近の書き込みは自重しましょう

■前スレ
HTML/CSS のどんな質問に必ず優しく答えるスレ 31
https://mevius.5ch.net/test/read.cgi/hp/1517028608/

■関連スレ
Webサイト制作初心者用質問スレ part248
http://mevius.2ch.net/test/read.cgi/hp/1494150188/

■HTML
HTML Living Standard 日本語訳
https://momdo.github.io/html/index.html

■CSS
Selectors Level 4 日本語訳
https://triple-underscore.github.io/selectors4-ja.html
006134
垢版 |
2018/03/19(月) 13:17:56.54ID:???
沢山の回答ありがとうございます
「テキストエリア」と差別化できているので、
「テキストフィールド」が一番よさそうだなと思いました
ありがとうございました
0062Name_Not_Found
垢版 |
2018/03/19(月) 13:21:21.51ID:???
sass大好きなんだけど、みんなscss形式で書くからsassのインデント派な自分は肩身が狭い
hamlみたいにすっきり書けるの所がいいのに
0066Name_Not_Found
垢版 |
2018/03/19(月) 14:32:19.94ID:???
>>62
なんだかんだでもう数年もすればsassが主流になってるだろう
0067Name_Not_Found
垢版 |
2018/03/19(月) 14:35:11.31ID:???
flexboxで、flexアイテムにmarginを設定しても
flexコンテナのpaddingや、
他のflexアイテムのmarginと相殺されません
アイテムの並びが固定されている場合は、
スタイル指定を調整することでうまく等間隔に配置できますが
並びがレスポンシブに変わる場合にはそれはできません
コンテナとアイテムの間、アイテムとアイテムの間に
等しくマージンを設定したい場合はどうしたらいいのでしょうか?
0068Name_Not_Found
垢版 |
2018/03/19(月) 17:06:19.25ID:???
calc()使っても駄目かね?
0069Name_Not_Found
垢版 |
2018/03/19(月) 17:25:53.28ID:???
一方にのみ設定してみたり、
擬似クラスを使ってみるとか?
コードがあれば分かりやすいかも
0070Name_Not_Found
垢版 |
2018/03/19(月) 20:58:58.35ID:???
>>66
てことは主流でないもので回答してる輩がいるわけか
0071Name_Not_Found
垢版 |
2018/03/19(月) 21:00:26.16ID:???
>>67
並びがレスポンシブに変わる場合、ってのがよくわからんが
marginは上下と左右で違うことはOK?
0072Name_Not_Found
垢版 |
2018/03/19(月) 21:05:17.31ID:???
要はスマホサイズ時にボックスが縦並びになる時に
意図したようなmarginサイズになって並ばないってことでしょ
0074Name_Not_Found
垢版 |
2018/03/19(月) 22:08:28.27ID:???
ある要素を浮かせて特定の場所に表示させるのってどうすんでしたっけ

position:absolute

float; left
かなんかだったとおもうのですが
できません
0075Name_Not_Found
垢版 |
2018/03/19(月) 23:03:30.11ID:EI3D6ctE
>>74
前者であってる
それと一緒にleft、right、top、bottomで座標を決める

その要素から親要素を辿っていって
最初にpositionがstatic以外の要素が座標の基準になる
そのような要素がなかったら<body>が基準になる
0076Name_Not_Found
垢版 |
2018/03/19(月) 23:14:01.11ID:???
>>75
例えばJSで75のコメントの要素を浮かせてスレ上部に移動させるとするとどうすればいいですか?
前試しにやったらできたのですが。。。

elm = document.getElementById("75")
elm.setAttribute("style", "position:absolute; top:100; left100")
をコンソールで実行しても移動しないのです
0077Name_Not_Found
垢版 |
2018/03/19(月) 23:25:29.47ID:???
left の:が抜けてますが脱字です。無視して下さい。
0078Name_Not_Found
垢版 |
2018/03/19(月) 23:52:50.08ID:EI3D6ctE
>>76
それは書き方がおかしい

var elem = document.getElementById('75');
elem.style.position = 'absolute';
elem.style.left = '300px';

これでこんな感じにズレる
https://i.imgur.com/WsW5mcZ.jpg
0079Name_Not_Found
垢版 |
2018/03/19(月) 23:55:14.58ID:???
>>76
top、leftは単位が必要
100px、100%、100emなど
0080Name_Not_Found
垢版 |
2018/03/20(火) 00:42:12.98ID:???
>>67
そもそもmargin設定したかったらflexbox使う必要なくない?
> * を inline-block にして margin つければいいんじゃないの
flex 使うからには space-around か between で任せたいから使うんでしょ
0082Name_Not_Found
垢版 |
2018/03/20(火) 06:34:53.28ID:???
<html style="font-famiry:書体;">
とか?
0085Name_Not_Found
垢版 |
2018/03/20(火) 11:25:35.74ID:???
>>81
font-family: serif;

見た目を変えるのはHTMLの仕事ではないので
CSSでやろう
0086Name_Not_Found
垢版 |
2018/03/20(火) 12:17:52.68ID:???
>>82
>>85
ありがとうございます試してみます。
全体のフォントをそうしたいのではなく一フレーズだけ変えたいのでhtmlかなと思ったのですがど素人なものですみません。
0087Name_Not_Found
垢版 |
2018/03/20(火) 12:30:08.01ID:UBbYMift
>>86
それもCSSでやるのだよ
書体を変えたい要素のスタイルをCSSで書く
0088Name_Not_Found
垢版 |
2018/03/20(火) 15:15:27.15ID:???
>>86
そういうのはspanのclass指定でいいじゃね?
008967
垢版 |
2018/03/20(火) 15:56:30.68ID:???
回答ありがとうございました
皆様のレスを読んで、根本的にmarginの相殺に関して誤解していたと気づきました
相殺するのは縦marginだけで、しかも縦marginが全て相殺するわげではないのですね
どうしたかについてですが

Mastering Wrapping of Flex Items : Creating gutters between items
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout/Mastering_Wrapping_of_Flex_Items

ここを見ると、アイテムやコンテナの間に自由にマージンを設定するには
現状ではラッパーを使うしかないようです
場合によってはコンテナのpaddingとアイテムのmarginだけでも可能ですが
コンテナ-アイテム間の幅と、コンテナ-コンテナの間の幅を変えるなどしたい場合は
ラッパーを使うしかないようです
見た目のためだけのHTML要素を使うのはなるべくなら避けたいですが、
今の時点では仕方ないですね
row-gapとcolumn-gapというのが将来Flexboxにも追加されるそうなので、
それが実装されれば解決するのかもしれません
ありがとうございました
0090Name_Not_Found
垢版 |
2018/03/20(火) 15:57:39.31ID:???
×コンテナ-アイテム間の幅と、コンテナ-コンテナの間の幅
○コンテナ-アイテム間の幅と、アイテム-アイテムの間の幅

でした
0091Name_Not_Found
垢版 |
2018/03/20(火) 17:05:22.60ID:???
>>78
>>79

ああ、単位か
ちょくちょく忘れる
ありがとうございました。
0092Name_Not_Found
垢版 |
2018/03/20(火) 18:31:10.64ID:???
>>87
う〜ん面倒…と思ってしまいますがそれが基本中の基本ですよね
css苦手意識が強くて極力弄りたくないと思ってましたがそれじゃダメですね、がんばりますありがとうございます

>>88
そういう答えが欲しかったんです!
でもcssがんばってみますありがとうございます
0093Name_Not_Found
垢版 |
2018/03/20(火) 21:18:40.55ID:c11TXgNj
<table cellpadding="10">のようにテーブル内にあるセル全部の余白をcssで設定するには
どうすればいいんですか?
<table style="padding:10px">だとテーブルの外枠だけしか余白が設定されないので
0094Name_Not_Found
垢版 |
2018/03/20(火) 21:22:33.95ID:UBbYMift
>>93
border-collapse:separate;
border-spacing: お好み値;

marginみたいに縦横書けるよ
0095Name_Not_Found
垢版 |
2018/03/21(水) 10:39:16.98ID:LwnUScG2
>>94
それセル間のスペースだったで
やりたいのはセル内にスペースをつけたいってこと
<td style="padding10px;">だとそのセルだけにしかスペースが適用されないけど
それをテーブル内にあるセル全体に適用したいんです
0096Name_Not_Found
垢版 |
2018/03/21(水) 12:11:12.38ID:???
>>95
<td style="padding10px;">を全部のセルに書く
またはcssで
td {padding10px;}
0097Name_Not_Found
垢版 |
2018/03/21(水) 12:23:37.71ID:???
まあcssでやった方がスマートではある
0098Name_Not_Found
垢版 |
2018/03/22(木) 01:36:47.36ID:???
emは、親要素のフォントサイズが基準になると、教則本などには書いています
フォントサイズの指定にこの単位を使った場合は、その通りだと思いますが
この単位をwidthなどに使った場合、
親要素のフォントサイズではなく自要素のフォントサイズが基準になっているように思います
たとえば
#parent {
font-size: 13px;
}

#child {
font-size: 30px;
width: 10em;
}
のようにすると、#parentのfont-sizeを変えても#childの幅は変わりませんが
#childのfont-sizeを変えると#childの幅も変わります
emが親要素基準になるのはフォントサイズ指定に使った場合だけなのでしょうか?
0099Name_Not_Found
垢版 |
2018/03/22(木) 02:01:30.07ID:???
「プロとして恥ずかしくない 新・CSSデザインの大原則」には
font-sizeは親要素基準、それ以外は自要素基準と書いてありました
このことに触れてもいない本とかオンライン学習とか、結構多くないですか?
0100Name_Not_Found
垢版 |
2018/03/22(木) 03:01:22.57ID:???
フォント指定なら単位はremでやれば?
0101Name_Not_Found
垢版 |
2018/03/22(木) 03:03:52.20ID:???
1ラム、2ラム、3ラムだっちゃ
0102Name_Not_Found
垢版 |
2018/03/22(木) 03:04:10.95ID:???
あと参考書は出版時期のそれ以前のものが基準だからね
0103Name_Not_Found
垢版 |
2018/03/22(木) 04:36:15.78ID:???
remがいい場合もあるし、emがいい場合もありますよね
それにemはかなり以前(CSS2.1あるいはもっと前)からあって、
その時から性格も変わってないと思いますが…。
ともあれ、買ってはいたもののあまり読んでいなかった
「プロとして恥ずかしくない 新・CSSデザインの大原則」が
読んでみると本質に迫っている非常にいい本だと気づいたのは副産物でした
0104Name_Not_Found
垢版 |
2018/03/22(木) 05:11:07.81ID:???
それだけ内容が薄い、詳しくないってこと
だから良本や良サイトと呼ばれるものは、何万もある本、サイトの中でほんの一握りもない
0106Name_Not_Found
垢版 |
2018/03/22(木) 06:52:35.96ID:???
emのルールは変わってない
0107Name_Not_Found
垢版 |
2018/03/22(木) 07:03:01.14ID:???
>>99
そんなことはないよー
cascade(とinherit)についてうやむやなままにしてる人が多いだけだよー
0108Name_Not_Found
垢版 |
2018/03/22(木) 12:34:10.55ID:???
>>98
>親要素基準になるのはフォントサイズ指定に使った場合だけ

そのとおり。
仕様にもそう書かれている
継承されるから、何でも親基準であるかのように誤解しやすいだけ
0109Name_Not_Found
垢版 |
2018/03/22(木) 13:35:26.19ID:???
Cascading Style Sheetなんだから
あれこれ覚える前に
まず継承についてしっかり知らないといかんですな
0110Name_Not_Found
垢版 |
2018/03/22(木) 13:46:51.97ID:???
表形式のデータを
スプレッドシートにコピペすると
各セルに自動的に分かれる場合と別れない場合がありますが
あれはどういう場合に各セルに分かれるのでしょうか?

↓の形式のデータなら出来るのかと思ったけど
libre office calcなら自動的にセルごとに分かれるのですが
google spreadsheetだと1つのセルにまとまって表示されてしまいます。

<table><tbody><tr><td>1</td><td>2018/3/22</td><td>13:28:49</td><td>7:28:50</td><td>17323</td><td>5529</td></tr><tr>
0111Name_Not_Found
垢版 |
2018/03/22(木) 14:13:15.88ID:???
>>110のテーブルデータは例として冒頭部分をコピペしたものです
0112Name_Not_Found
垢版 |
2018/03/22(木) 18:36:19.73ID:???
今の時代でtbodyいるか?
0113Name_Not_Found
垢版 |
2018/03/22(木) 18:50:01.25ID:???
古い時代でも省略可能だから書かない人多かったと思うけど
自分は<thead>と<tbody>書く派だな

CSSやJSのために
0114Name_Not_Found
垢版 |
2018/03/22(木) 19:19:48.46ID:???
>>110です
<br>いれれば行は自動でぶんかつしてくれるようになりましたが
列が自動で分割されてくれません・・・
誰かよろしくお願いします。
0115Name_Not_Found
垢版 |
2018/03/22(木) 19:42:07.23ID:???
たしかJSでtdを追加すると自動でtbodyが追加されて構造が勝手に変えられる記憶があったので
tbodyはつけるようにしてます
cellだったかもしれないけど
0116Name_Not_Found
垢版 |
2018/03/22(木) 19:54:33.91ID:???
>>115
innerHTML で追加した場合じゃないか?(パースされるときに自動で追加される)
appendChild などで自動で追加されることはないはず
0117Name_Not_Found
垢版 |
2018/03/22(木) 20:18:56.35ID:???
thead,tbodyは通常省略するけど、jsで使う時は付けてるな
例えばAjaxで検索して結果を一覧テーブル更新みたいな時はtheadはそのままでtbodyを空にしてtrで入れていくのでtbodyがあった方が楽だから
0118Name_Not_Found
垢版 |
2018/03/22(木) 20:22:21.46ID:???
content:"";
という空のcontentはどういう意味で書いてるんでしょうか?
0119Name_Not_Found
垢版 |
2018/03/22(木) 21:24:37.58ID:???
>>118
そのままだけど、なにも書くことがないって意味だよ
アイコンとかそうすることが多いな俺は
0120Name_Not_Found
垢版 |
2018/03/22(木) 21:40:33.66ID:???
>>119
空ならなくてもいいと思うのですがわざわざ書く理由は特にないんですか?
例えば
li:before {
content: "";
display: block;
}

li:before {
display: block;
}
と同じということでしょうか
0121Name_Not_Found
垢版 |
2018/03/22(木) 21:50:24.80ID:???
>>120
違うよ
試してみ
後者は表示されんじゃろ
0122Name_Not_Found
垢版 |
2018/03/22(木) 23:47:58.47ID:???
>>120
「空文字」と「存在しない(プログラムではnullと言います)」は違うのです。
前者のcontentは空文字、後者のcontentは存在しない。
contentが存在しない要素は消える。
なので後者はbefore自体が消える。
0123Name_Not_Found
垢版 |
2018/03/23(金) 00:24:07.43ID:???
ということは後者は
たとえli:beforeと記述しても意味がないってことに?
0124Name_Not_Found
垢版 |
2018/03/23(金) 00:25:07.10ID:+azEk2fF
>>123
そうだよ
試してみ
0125Name_Not_Found
垢版 |
2018/03/23(金) 00:43:50.04ID:???
>>121
>>122
ありがとうございます。
今やってみてようやく分かりました
0126Name_Not_Found
垢版 |
2018/03/23(金) 23:18:30.87ID:???
おかしな話だというのはわかっているのですが、
要素をfloat:leftした上で再度中央寄せする方法ってないでしょうか?

jqueryで追加した要素とその下の要素が重なってしまうのを
display: block + float: leftで回避しているのですが、
なんとか中央寄せしたいのです。
0127Name_Not_Found
垢版 |
2018/03/24(土) 00:39:09.87ID:???
キャプって画像あげるか
コード晒してもらわんと正確に何がしたいか分からんけど
0130Name_Not_Found
垢版 |
2018/03/24(土) 01:50:40.81ID:???
>>126
もうfloatは旧世代のものになりつつあるのでこれを期にflexを勉強してみては?
0131Name_Not_Found
垢版 |
2018/03/24(土) 07:37:34.92ID:???
いや、floatでって質問だろw
なんでfloatなんか使ってるかわからんけどfloat 使う理由があるのかもしれんし
そもそもなにがしたいのかわからん状態だから思いもよらない理由があるんじゃないか
理由聞いた上でそれflex使えよってなるかもだけどw
0132Name_Not_Found
垢版 |
2018/03/24(土) 07:40:46.56ID:???
単純解があるのにわざわざ古いもん使わんでも
0133Name_Not_Found
垢版 |
2018/03/24(土) 07:49:23.12ID:???
なにがしたいかわからんのにflexが解とは言えないぞ
0134126
垢版 |
2018/03/24(土) 08:17:29.31ID:???
すいません。
動的に追加した要素と元々その下にあった中央寄せしている要素について以下のサイトのような現象が起きていて、
https://ja.stackoverflow.com/questions/33814/html%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%A8%E6%96%87%E5%AD%97%E3%81%8C%E9%87%8D%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%97%E3%81%BE%E3%81%86
提示されている解決策のうち、
display: block + float: left
を適用すれば重なること自体は解決できたのでfloat:leftを使用していました。
みなさんが教えてくださった情報を元に、調べて直してみます。
ありがとうございました。
0135Name_Not_Found
垢版 |
2018/03/24(土) 10:16:58.37ID:???
重なるのをfloatで回避ってのがよくわからないなー

ちなみに重なってるのはfloatが悪いんじゃなくmarginをimgやspanにつけてるから
span(inline要素)には上下marginやpaddingがきかない(ベースライン規準で位置を変化させない)

spanにスタイルつけるときは文字修飾や文字サイズ分の背景をつけるときだけにして
レイアウトの調整は外側にコンテナブロックを作ってそれにつけるのがコーディングマナーだと思う
なのでimgをそのままおくのもよろしくない
外側にdivを作ってその中にimgをおくのがコーディング的にはきれい

あとはdivどうしをどうレイアウトするかはflexなりfloatなりを使えばいいと思う
0136126
垢版 |
2018/03/24(土) 11:09:22.35ID:???
とりあえず解決したのでご報告しておきます
結論から言うと要素の間でclearfixすると要素が重ならなくなり
謎の解決方法?のfloat:leftも使う必要がなくなり再度中央寄せする必要がなくなりました

最初からサンプルを乗せればよかったのですが…すいません。
元々:Prev Nextの真上の6やajaxをクリックするとPrev Nextが重なってしまっていた
http://pilotfarm.uh-oh.jp/gridder/demo/demo.html
floatでなんとかしていたもの:
http://pilotfarm.uh-oh.jp/gridder/demo/demo-float.html
修正後:
http://pilotfarm.uh-oh.jp/gridder/demo/demo-fix.html

大変お騒がせしてすいませんでした。
0137Name_Not_Found
垢版 |
2018/03/24(土) 12:53:13.69ID:???
>>134
spanにIDで属性付けるってとこで?なんだが
こういう風なデザインの場合はflexでやるのがスマートで良いと思う
これを期にflexを導入してみては?
0138126
垢版 |
2018/03/24(土) 13:20:34.34ID:???
起こっている現象が同じというだけで
そこのサイトの質問者と同じ条件をしているわけではないです
136ではったURLのソースを見てもらうとわかるかと思います(Gridder.jsのdemoほとんどそのままですが)
混乱させてすいません
何にせよflex勉強してみます
0139Name_Not_Found
垢版 |
2018/03/24(土) 16:51:31.91ID:???
<div class="parent">
親の中身
<div class="child">この中身</div>
</div>
の親はブラウザ幅最大上下左右中央ぞろえを
parentは
position: relative;
width:100%;

childは
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);

で、対応したんですがIEのみtranslateで移動した分?の余白が右に出来ます
overflow:hiddenを使わずに対処できるでしょうか?
0140139
垢版 |
2018/03/24(土) 16:57:01.42ID:???
すみません、書いた直後に解決しました
0143Name_Not_Found
垢版 |
2018/03/24(土) 19:12:54.05ID:???
なんどやってもうまくいかなくて
もうええわ!って、次の日にやったら
ちゃんとできてる現象に名前をつけたい
0144Name_Not_Found
垢版 |
2018/03/24(土) 22:08:27.56ID:???
・リフレッシュ
・気持ちの切り換え
・発想の転換
・落ち着く
お好きなのをどうぞ
まあ強いて言えば「明日の俺はすごい」かな
0145Name_Not_Found
垢版 |
2018/03/24(土) 22:10:29.26ID:???
異世界なのに最弱だったけど明日の俺TUEEE
0146Name_Not_Found
垢版 |
2018/03/25(日) 01:35:28.87ID:???
何度やってもうまくいかない!もうええわ!
って時はリフレッシュすればなんとかなるって俺は知ってるい!
よし少し休もう…

…っは!朝!?


って現象はなんていうの?
0148Name_Not_Found
垢版 |
2018/03/25(日) 12:47:55.19ID:???
IEはもう対象から外しても問題ないと思う
今WEBをPCデスクトップで閲覧してるのは全体の10パーセントくらいだから
0149Name_Not_Found
垢版 |
2018/03/25(日) 13:18:43.57ID:???
Chromeだけでええやんもう
0150Name_Not_Found
垢版 |
2018/03/25(日) 17:58:21.99ID:???
10パーセントもあるなら外せないな
0151Name_Not_Found
垢版 |
2018/03/25(日) 19:57:28.61ID:???
その10パーの中の1パーセントくらいがIE
0152Name_Not_Found
垢版 |
2018/03/25(日) 21:43:33.29ID:???
1パーセントもあるなら外せないな
0154Name_Not_Found
垢版 |
2018/03/26(月) 01:56:09.09ID:???
IEユーザーは広告よく踏んでくれるから
無駄とは思えないな
これで子供4人養ってるのに
0155Name_Not_Found
垢版 |
2018/03/26(月) 13:18:19.27ID:???
全体の〜みたいな統計持ち出すと
こいつ大雑把だ!って言われない?
代理店とか客の広報とかとか

自サイトを解析して無視できるほど少ないかどうか判断すべきだと思う
0156Name_Not_Found
垢版 |
2018/03/26(月) 14:58:20.86ID:???
まあクライアントがIE対応しろと言ってくるか
個人的にずっとIEをフォローしたいとこはしとけばいいんじゃね?としか
0157Name_Not_Found
垢版 |
2018/03/26(月) 17:28:43.19ID:???
未だにIE6なんか使ってるやつおらんやろってバカにしてたけど
フロッピー使ってるPC見て戦慄した
0158Name_Not_Found
垢版 |
2018/03/26(月) 19:11:47.73ID:???
そもそもIE6なんてXP時代の産物だから今の時代にそんな環境で
オンラインするようなのを数に入れる必要はないと思う
0159Name_Not_Found
垢版 |
2018/03/26(月) 21:19:13.22ID:???
ベースが多ければ1パーセントはでかいな
0160Name_Not_Found
垢版 |
2018/03/27(火) 01:53:45.29ID:???
>>157
独自開発のシステムとか開発終わったソフトの関係上古いPCつかう企業はあるよ
でもさすがにネットするのはそこそこ新しい機体だろ
そもそもフロッピー使うようなPCじゃアナログモデムとかで今のネット回線つかえんだろ
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況