|
/* LINE風Redmineテーマ - responsive.css */
|
|
/* レスポンシブデザイン用CSS */
|
|
|
|
/* タブレット - 1024px以下 */
|
|
@media screen and (max-width: 1024px) {
|
|
/* サイドバーを少し狭くする */
|
|
#main-menu {
|
|
width: 220px;
|
|
}
|
|
|
|
/* コンテンツの余白を調整 */
|
|
#main {
|
|
padding: 15px;
|
|
}
|
|
|
|
#content {
|
|
padding: 20px;
|
|
}
|
|
|
|
/* 検索ボックスの幅調整 */
|
|
#top-menu #q {
|
|
width: 180px;
|
|
}
|
|
}
|
|
|
|
/* タブレット - 899px以下 */
|
|
@media screen and (max-width: 899px) {
|
|
/* ヘッダーの調整 */
|
|
#top-menu form {
|
|
display: none; /* 検索ボックスを非表示 */
|
|
}
|
|
|
|
/* テーブルの調整 */
|
|
table.list.issues th,
|
|
table.list.issues td {
|
|
padding: 8px 4px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
/* 一部の列を非表示に */
|
|
table.list.issues .due_date,
|
|
table.list.issues .created_on,
|
|
table.list.issues .tracker,
|
|
table.list.issues .priority {
|
|
display: none;
|
|
}
|
|
|
|
/* チケット詳細の調整 */
|
|
div.issue .issue-header {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
div.issue .issue-actions {
|
|
margin-top: 10px;
|
|
width: 100%;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
div.issue .attributes th {
|
|
width: 120px;
|
|
}
|
|
|
|
/* ページネーションの調整 */
|
|
.pagination {
|
|
flex-direction: column;
|
|
align-items: center;
|
|
}
|
|
|
|
.pagination .items,
|
|
.pagination .per-page {
|
|
margin-top: 10px;
|
|
margin-left: 0;
|
|
}
|
|
}
|
|
|
|
/* モバイル - 768px以下 */
|
|
@media screen and (max-width: 768px) {
|
|
/* 基本レイアウト */
|
|
body, html {
|
|
overflow-x: hidden;
|
|
}
|
|
|
|
/* ヘッダーの調整 */
|
|
#top-menu {
|
|
padding: 0 10px;
|
|
}
|
|
|
|
#top-menu ul {
|
|
gap: 10px;
|
|
}
|
|
|
|
/* メインメニュー調整 */
|
|
#main-menu {
|
|
position: fixed;
|
|
width: 250px;
|
|
left: -250px;
|
|
top: 56px;
|
|
transition: left var(--transition-speed) ease;
|
|
box-shadow: var(--shadow-medium);
|
|
z-index: 1000;
|
|
}
|
|
|
|
#main-menu.open {
|
|
left: 0;
|
|
}
|
|
|
|
/* トグルボタンの表示 */
|
|
#main-menu .main-menu-toggle {
|
|
display: block;
|
|
position: fixed;
|
|
top: 56px;
|
|
left: 0;
|
|
width: 40px;
|
|
height: 40px;
|
|
background-color: var(--line-primary);
|
|
color: white;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
cursor: pointer;
|
|
z-index: 1001;
|
|
border-radius: 0 0 var(--border-radius-small) 0;
|
|
box-shadow: var(--shadow-small);
|
|
}
|
|
|
|
/* メインコンテンツ調整 */
|
|
#main {
|
|
padding: 10px;
|
|
margin-top: 40px; /* トグルボタンの高さ分 */
|
|
}
|
|
|
|
#content {
|
|
padding: 15px;
|
|
}
|
|
|
|
/* チケット一覧 */
|
|
table.list.issues {
|
|
font-size: 13px;
|
|
}
|
|
|
|
/* チケット詳細 */
|
|
div.journal h4 {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
div.journal h4 .journal-link {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
/* フォーム要素 */
|
|
select, input[type="text"] {
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* ボタングループ */
|
|
.buttons {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 10px;
|
|
}
|
|
|
|
.buttons input, .buttons a {
|
|
margin: 0;
|
|
flex: 1;
|
|
min-width: 120px;
|
|
text-align: center;
|
|
justify-content: center;
|
|
}
|
|
}
|
|
|
|
/* モバイル - 599px以下 */
|
|
@media screen and (max-width: 599px) {
|
|
/* ヘッダー調整 */
|
|
#top-menu .home-text {
|
|
display: none; /* ロゴのテキスト部分を非表示 */
|
|
}
|
|
|
|
/* テーブル調整 */
|
|
table.list.issues th,
|
|
table.list.issues td {
|
|
padding: 6px 3px;
|
|
font-size: 13px;
|
|
}
|
|
|
|
/* さらに列を非表示に */
|
|
table.list.issues .assigned_to,
|
|
table.list.issues .status,
|
|
table.list.issues .project {
|
|
display: none;
|
|
}
|
|
|
|
/* チケット詳細 */
|
|
div.issue .attributes {
|
|
display: block;
|
|
}
|
|
|
|
div.issue .attributes tr {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
div.issue .attributes th,
|
|
div.issue .attributes td {
|
|
display: block;
|
|
width: 100%;
|
|
text-align: left;
|
|
padding: 3px 0;
|
|
}
|
|
|
|
/* ページネーション */
|
|
.pagination ul.pages li.page:not(.current) {
|
|
display: none;
|
|
}
|
|
|
|
/* 履歴 */
|
|
div.journal ul.details li {
|
|
flex-direction: column;
|
|
}
|
|
|
|
div.journal ul.details li .label {
|
|
width: 100%;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
/* コメントフォーム */
|
|
#update .input-group {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
#update .input-group label {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
/* 添付ファイル */
|
|
div.attachments ul li {
|
|
width: 100%;
|
|
max-width: none;
|
|
}
|
|
}
|
|
|
|
/* フォームのレスポンシブ対応 */
|
|
@media screen and (max-width: 480px) {
|
|
input, select, textarea {
|
|
width: 100%;
|
|
}
|
|
|
|
.splitcontent {
|
|
display: block;
|
|
}
|
|
|
|
.splitcontent > * {
|
|
width: 100%;
|
|
margin-right: 0;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.splitcontentleft, .splitcontentright {
|
|
width: 100%;
|
|
float: none;
|
|
}
|
|
|
|
.filter {
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
.filter .field,
|
|
.filter .operator,
|
|
.filter .values {
|
|
width: 100%;
|
|
margin-bottom: 5px;
|
|
}
|
|
}
|
|
|
|
/* ダークモードサポート(オプション) */
|
|
@media (prefers-color-scheme: dark) {
|
|
/* ダークモード用の変数を上書き */
|
|
:root {
|
|
--line-background: #121212;
|
|
--line-secondary: #FFFFFF;
|
|
--line-light-gray: #2C2C2E;
|
|
--line-mid-gray: #3A3A3C;
|
|
--line-dark-gray: #8E8E93;
|
|
--line-white: #1C1C1E;
|
|
--line-sidebar-bg: #000000;
|
|
--line-panel-bg: #2C2C2E;
|
|
--line-border: #3A3A3C;
|
|
}
|
|
|
|
/* テキスト色の調整 */
|
|
body {
|
|
color: #E5E5E7;
|
|
}
|
|
|
|
/* リンク色の調整 */
|
|
a {
|
|
color: #0A84FF;
|
|
}
|
|
|
|
a:hover {
|
|
color: #5AC8FA;
|
|
}
|
|
|
|
/* コントラスト調整 */
|
|
#top-menu #q {
|
|
background-color: rgba(255, 255, 255, 0.1);
|
|
}
|
|
|
|
div.issue .issue-header {
|
|
background-color: rgba(6, 199, 85, 0.2);
|
|
}
|
|
|
|
table.list.issues tbody tr:nth-child(even) {
|
|
background-color: rgba(255, 255, 255, 0.03);
|
|
}
|
|
|
|
table.list.issues tbody tr:hover {
|
|
background-color: rgba(6, 199, 85, 0.1);
|
|
}
|
|
}
|