Q&A
EG-BIM 관련 문의하기
문의 상세
문의 내용과 답변을 확인할 수 있습니다.
문의 상세
문의 내용과 답변을 확인할 수 있습니다.
diff --git a/assets/styles.css b/assets/styles.css index d27d4df..f784a3c 100644 --- a/assets/styles.css +++ b/assets/styles.css @@ -266,6 +266,7 @@ button { cursor: pointer; } .detail-head { padding: 23px 22px 20px; border-bottom: 1px solid var(--line); } .detail-title-line { display: flex; align-items: center; justify-content: space-between; gap: 16px; } .detail-title-line h2 { margin: 0; font-size: 22px; letter-spacing: -.04em; } +.detail-title-line .status { min-width: 82px; padding: 5px 10px; font-size: 13px; font-weight: 700; } .detail-meta { display: flex; gap: 14px; flex-wrap: wrap; padding-top: 15px; color: #888; font-size: 13px; } .detail-meta span + span::before { content: ''; display: inline-block; width: 1px; height: 11px; margin: 0 14px 0 0; background: #ddd; vertical-align: -1px; } .detail-body { min-height: 260px; padding: 38px 22px 56px; white-space: pre-wrap; word-break: break-word; } @@ -274,6 +275,8 @@ button { cursor: pointer; } .attachment-item { padding: 7px 0; color: #555; font-size: 13px; } .attachments a { color: var(--navy); text-decoration: underline; } .detail-actions { display: flex; justify-content: space-between; padding: 23px 22px 0; } +.egbim-page #backButton { display: none; } +.egbim-page .form-footer:has(#backButton) { display: none; } .owner-actions { display: flex; gap: 8px; } .button-danger { border-color: #c43d3d; background: #c43d3d; color: #fff; } .button-danger:hover { border-color: #a52f2f; background: #a52f2f; } @@ -285,11 +288,12 @@ button { cursor: pointer; } .comment-meta { display: flex; justify-content: space-between; margin-bottom: 7px; color: #777; font-size: 13px; } .comment-content { white-space: pre-wrap; } .comment-empty { padding: 32px; border-bottom: 1px solid var(--line); color: #999; text-align: center; } -.comment-form { padding: 20px 10px 0; } +.comment-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 16px; padding: 20px 10px 0; } .comment-form .textarea { min-height: 120px; } -.comment-attachment-input { padding-top: 14px; } +.comment-form > .textarea { grid-column: 1 / -1; } +.comment-attachment-input { grid-column: 1; padding-top: 14px; } .comment-attachment-input input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; clip-path: inset(50%); } -.comment-image-button { height: 34px; padding: 0 13px; font-size: 13px; } +.comment-image-button { height: 42px; padding: 0 21px; font-size: 13px; } .comment-image-preview, .comment-attachments-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; } .comment-image-preview-item { width: 104px; overflow: hidden; border: 1px solid #ddd; background: #fafafa; } .comment-image-preview-item img { display: block; width: 104px; height: 78px; object-fit: cover; } @@ -297,8 +301,11 @@ button { cursor: pointer; } .comment-image-link { display: block; width: 124px; } .comment-image { display: block; width: 124px; height: 94px; border: 1px solid #ddd; object-fit: cover; } .comment-attachment-name { color: #666; font-size: 13px; } -.comment-form-actions { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-top: 10px; } +.comment-form-actions { display: flex; grid-column: 2; align-items: flex-end; justify-content: flex-end; gap: 12px; padding-top: 14px; } .comment-form-actions .form-error { display: block; flex: 1; margin: 0; } +.comment-form-actions .form-error[hidden] { display: none; } +#commentSubmit { height: 42px; border-color: #000; background: #000; color: #fff; } +#commentSubmit:hover { border-color: #222; background: #222; } .site-footer { padding: 38px 32px; background: #111; color: #b9b9b9; } .footer-inner { display: flex; align-items: flex-start; justify-content: space-between; max-width: 1280px; margin: 0 auto; gap: 40px; } @@ -436,6 +443,8 @@ button { cursor: pointer; } .detail-actions .button { flex: 1; padding: 0 10px; } .footer-inner { display: block; } .footer-links { margin-top: 18px; } + .comment-form { grid-template-columns: minmax(0, 1fr); } + .comment-form-actions { grid-column: 1; justify-content: flex-end; } } @media (max-width: 480px) { diff --git a/egbim/app.js b/egbim/app.js index e98b433..b82ef2b 100644 --- a/egbim/app.js +++ b/egbim/app.js @@ -405,6 +405,10 @@ function initDetail() { const detail = qs('#detail'); if (!detail) return; + const detailListLink = qs('.detail-actions > a', detail); + if (detailListLink) detailListLink.textContent = '목록으로'; + const bottomBackButton = qs('#backButton', detail); + if (bottomBackButton && bottomBackButton.parentElement) bottomBackButton.parentElement.remove(); const id = new URLSearchParams(window.location.search).get('id') || 'EG-1048'; const post = getPosts().find(function (item) { return item.id === id; }); if (!post) { @@ -596,6 +600,8 @@ }); const commentImages = qs('#commentImages'); const commentImagePreview = qs('#commentImagePreview'); + const commentImageLabel = qs('label[for="commentImages"]'); + if (commentImageLabel) commentImageLabel.textContent = '댓글 이미지 첨부'; if (commentImages && commentImagePreview) commentImages.addEventListener('change', function () { const files = Array.prototype.slice.call(commentImages.files || []); commentImagePreview.innerHTML = files.filter(function (file) { return /^image\//i.test(file.type); }).map(function (file) { @@ -606,7 +612,6 @@ refreshRemoteStatus(post).then(function (changed) { if (changed) qs('[data-detail-status]').textContent = normalizeStatus(post.status) || '공지'; }); - qs('#backButton').addEventListener('click', function () { window.location.href = 'index.html'; }); } document.addEventListener('DOMContentLoaded', function () { bindGlobal(); initList(); initWrite(); initDetail(); }); diff --git a/egbim/detail.html b/egbim/detail.html index 8d776c9..11b9602 100644 --- a/egbim/detail.html +++ b/egbim/detail.html @@ -3,6 +3,6 @@
EG-BIM 관련 문의하기
문의 내용과 답변을 확인할 수 있습니다.
문의 내용과 답변을 확인할 수 있습니다.
답변 0