レスポンシブ!脱出!?

ヤマラボです!

こんばんは!

タイトルの通りですが、ようやくレスポンシブデザインが理解できてきました。

ずっと悩んでいました。

Phpでforeachで、table をレスポンシブにすることができなくて。。。

ですが!

クリアしました!

コードも貼っておきます!

<style>
table {
	width: 90%;
	margin: 20px auto;
}
table th, td {
	border: solid 1px #000;
	border-collapse: collapse;
	padding: 8px;
}
table th {
	color: #fff;
	background-color: gray;
	opacity:0.9;
}
.spF,
.sp,
.spE {
	display: none;
}

@media screen and (max-width:480px) { 
	.pc {
		display: none;
	}
	.spF {
		margin-top: 16px;
	}
	.spF,
	.sp,
	.spE,
	.spF th,
	.sp th,
	.spE th {
    		display: block;
    	}
    	.spF td,
    	.sp td,
    	.spE td {
    		width: 480px; /*スマホ切替サイズに設定すると100%表示*/
    		border-top: none;
    		border-bottom: none;
	}
	.spE td {
		border-bottom: solid 1px #000;
	}
}
</style>
</head>
<body>
<?php

//db1
$DbBase[] = array(
'id' => '1',
'name' => '東京 太郎',
'age' => '30',
'address' => '東京都',
'phone' => '0903333****',
'mail' => 'test@yam-lab.com'
);

//db2
$DbBase[] = array(
'id' => '2',
'name' => '札幌 太郎',
'age' => '20',
'address' => '札幌市',
'phone' => '0908888****',
'mail' => 'testtest@yam-lab.com'
);

//db3
$DbBase[] = array(
'id' => '3',
'name' => '名古屋 太郎',
'age' => '40',
'address' => '愛媛県',
'phone' => '0901234****',
'mail' => 'testes@yam-lab.com'
);

//出力
echo "<table>";
echo "<tr class='pc'>
			<th>id</th>
			<th>氏名</th>
			<th>年齢</th>
			<th>住所</th>
			<th>電話番号</th>
			<th>メールアドレス</th>
		</tr>";
foreach($DbBase as $value){
	echo "<tr class='spF'>
				<th>id</th>
				<td>{$value['id']}</td>
			</tr>
			<tr class='sp'>
				<th>氏名</th>
				<td>{$value['name']}</td>
			</tr>
			<tr class='sp'>
				<th>年齢</th>
				<td>{$value['age']}</td>
			</tr>
			<tr class='sp'>
				<th>住所</th>
				<td>{$value['address']}</td>
			</tr>
			<tr class='sp'>
				<th>電話番号</th>
				<td>{$value['phone']}</td>
			</tr>
			<tr class='spE'>
				<th>メールアドレス</th>
				<td>{$value['mail']}</td>
			</tr>
			<tr class='pc'>
				<td>{$value['id']}</td>
				<td>{$value['name']}</td>
				<td>{$value['age']}</td>
				<td>{$value['address']}</td>
				<td>{$value['phone']}</td>
				<td>{$value['mail']}</td>
			</tr>";
}
echo "</table>";
?>
</body></html>

見事なり!でいいのかな?笑

今日のとこはヨシにしよう!

ではまた!

レスポンシブ!脱出!?
トップへ戻る