kazpgmの日記

『プログラム自動作成@自動生成』作成の日記

「kaz_javaSpringBootプログラム自動作成◎自動生成」スマホ対応!レスポンシブサイト自動生成修正UPをベクターに依頼

18:01
①「kaz_javaSpringBootプログラム自動作成◎自動生成」スマホ対応!レスポンシブサイト自動生成修正UPをベクターに依頼した。OKが来たら、また報告する。
www.vector.co.jp
・Zenn本(SpringBoot、Thymeleaf プログラム自動作成(マクロ使用版))
zenn.dev

・2.2(202204230000)

1.CSSスマホ対応!レスポンシブサイトにした。スマホで表示する時、こんな感じの、ドロワーメニューにした。

■/resources/static/css/layout.css

	<<追加 start>>
【6】スマホ対応!レスポンシブサイト
	<<追加 end>>
・・・
#wrapper
{
<<削除 start>>
	width: 100%;
<<削除 end>>
<<追加 start>>
	min-width: 100%;
	display: inline-block;
<<追加 end>>
	margin: 0 auto;
	text-align: left;
}
・・・
#contents
{
	clear:both;
	background: url(../img/bg_contents.gif) repeat-x left top;
	background-color:#E6E6E6;
	padding:20px 0 20px 0;
<<追加 start>>
	min-width: 100%;
	display: inline-block;
<<追加 end>>
}
・・・
	<<追加 start>>
/* =============================================================
 ■□■ 6. スマホ対応!レスポンシブサイト ■□■
============================================================= */
@media screen and (max-width: 768px) {
/* ハンバーガーメニュー */
.hamburger {
  width: 30px;
  height: 30px;
  background: #205386;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 999;
}
.hamburger:hover {
  cursor: pointer;
}
.hamburger span {
  background: #fff;
  width: 25px;
  height: 2px;
  position: absolute;
  transition: 0.3s ease-out;
}
.hamburger span:nth-of-type(1) {
  top: 15px;
}
.hamburger span:nth-of-type(3) {
  bottom: 15px;
}
/* ハンバーガーメニューを左側に隠す */
.drawer-list {
  position: absolute;
  transform: translate(-300px);
  transition: 0.3s ease-out;
}
.drawer-list.open {
  transform: translate(0);
  transition: 0.3s ease-out;
}
#main
{
	background-color: #990000;
	margin:0 10px 0 5px;
	background-color:#FFFFFF;
	border:solid 1px #C6C6C6;
	padding:15px 15px 40px 15px;
	
	font-size: 8px;
}
.sysTitle {
  font-size: small;
  color:#FFFFFF;
  text-align: center;
}
}
@media screen and (min-width: 768px) {
.hamburger {
  display:none;
}
.drawer-list {
  display:block;
}
.sysTitle {
  font-size: large;
  color:#FFFFFF;
  text-align: center;
}
}
/* ハンバーガーメニューにactiveクラスが付いているときは三本線ではなく×印にする */
.hamburger.active span:nth-of-type(1) {
  transform: translateY(9px) rotate(-45deg);
  transition: 0.3s ease-out;
}
.hamburger.active span:nth-of-type(3) {
  transform: translateY(-9px) rotate(45deg);
  transition: 0.3s ease-out;
}
.hamburger.active span:nth-of-type(2) {
  opacity: 0;
}
	<<追加 end>>

■/resources/templates/members/admin/template.html

	<<追加 start>>
<meta name="viewport" content="width=device-width" />
	<<追加 end>>
・・・
<script type="text/javascript" src="/js/createDatepicker.js"></script>
	<<追加 start>>
<!-- ドロワーメニュー用ロジック -->
<script>
$(function(){
  $('.hamburger').click(function(){
    $('.hamburger').toggleClass('active');
    $('.drawer-list').toggleClass('open');
  });
  $('.menu > li > a').click(function(){
    $('.hamburger').toggleClass('active');
    $('.drawer-list').toggleClass('open');
  });
});
</script>
	<<追加 end>>

■/resources/templates/members/admin/header.html

	<<追加 start>>
<div class="hamburger">
  <span></span>
  <span></span>
  <span></span>
</div>
	<<追加 end>>
	<div id="header">
	<<修正後 start>>
	<a th:href="'javascript:submitFrm5(\'/members/admin/index\', \'\')'"><div class="sysTitle" ><strong>あなたのPGMタイトル&nbsp;&nbsp;管理システム</strong></div></a>
	<<修正後 end>>

■/resources/templates/members/admin/side.html

	<<修正後 start>>
	<div class="drawer-list"  id="side">
	<<修正後 end>>

2.ログイン画面をCSSスマホ対応!レスポンシブサイトにした。

<!DOCTYPE html>
<html lang="ja" 
      xmlns:th="http://www.thymeleaf.org" 
      xmlns:sec="http://www.thymeleaf.org/extras/spring-security">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
<title>あなたのPGMタイトル&nbsp;&nbsp;管理システム</title>
<link rel="stylesheet" href="/css/screen.css" type="text/css" media="screen,print" />
<<追加 start>>
<style type="text/css">
@media screen and (max-width: 768px) {
.sysTitle {
  font-size: small;
  color:#FFFFFF;
  text-align: center;
}
.smartphoneTbl table th,td {
  display:block;
  text-align: left;
}
}
@media screen and (min-width: 768px) {
.sysTitle {
  font-size: large;
  color:#FFFFFF;
  text-align: center;
}
}
</style>
<<追加 end>>
</head>

<body>
<div id="wrapper">
	<div id="header">
<<修正後 start>>
		<div class="sysTitle"><strong>あなたのPGMタイトル 管理システム</strong></div>
<<修正後 end>>
			<div id="r-navi">
					<form class="text-center" th:action="@{/logout}" method="post">
					<input type="image" src="/img/botton_logout.gif" alt="ログアウト" width="59" height="14" hspace="5" vspace="7" border="0">
					</form>
			</div>
			<p class="clear"></p>
	</div>
	
	<div id="contents-top">
		
    <form th:action="@{/login}" method="POST" id="login">
	<input type="text" name="dummy" style="display:none;" />
    <input type="hidden" name="mode" value="login_do">
		<div align="center">
<<修正後 start>>
          <table border="1" cellspacing="0" cellpadding="7">
<<修正後 end>>
            <tr><td>
<<修正後 start>>
                <table width="100%" border="0" cellspacing="0" cellpadding="5">
<<修正後 end>>
                  <tr>
                    <td colspan="2">※ユーザーID(メールアドレス)、パスワードを入力後、「ログイン」ボタンを押してください。</td>
                  </tr>
                  <tr>
                    <td>
<<修正後 start>>
                    <table class="smartphoneTbl" width="100%" border="0" cellspacing="0" cellpadding="5">
<<修正後 end>>
                        <tr>
                          <td>ユーザーID(メールアドレス)</td>
                          <td><input type="text" id="username" name="username" value="" /></td>
                        </tr>
                        <tr>
                          <td>パスワード</td>
                          <td><input type="password" id="password" name="password" /></td>
                        </tr>
                        <tr>
                          <td colspan="2">
							<p th:if="${param.error}"  class="font-s-red-form">ユーザーID(メールアドレス)かパスワードが正しくありません</p>
                          </td>
                        </tr>
                      </table>
                      <br>
                    </td>
                    <td>
<<修正後 start>>
                    	<table class="smartphoneTbl" width="100%" border="0" cellspacing="0" cellpadding="0">
<<修正後 end>>
                        <tr>
                          <td><p class="btn"><input type="image" src="/img/botton_login.gif" alt="LOGIN" width="78" height="45" border="0" /></p></td>  
                        </tr>
						</table>
                   </td>
                  </tr>
                </table>
            </td></tr>
          </table>
		</div>
	</form>
	</div>
	
	<div id="footer">
		<p>Copyright (c) あなたのPGM著作権表示 All rights reserved.</p>
	</div>
	
</div>
</body>
</html>