최정임 최정임 06-12
250612 최정임 css수정
@8487191d47c34ff1f46d43d30af6b6c6b4c1b27a
client/resources/scss/admin/content.scss
--- client/resources/scss/admin/content.scss
+++ client/resources/scss/admin/content.scss
@@ -45,87 +45,9 @@
         margin-bottom: 1rem;
     }
     
-    .search-wrap{
-        @include flex-layout(flex, center, space-between);
-        margin-bottom: 3rem;
-        .search-bar {
-            position: relative;
-            @include flex-layout(flex, center, start);
-        
-            .form-select {
-                width: 120px;
-                margin-left: 1rem;
-        
-                &.border-none{
-                    border: none;
-                    margin-left: 0;
-                }
-            }
-        
-            .form-control {
-                width: 300px;
-                margin-left: 1rem;
-        
-                &.border-none{
-                    border: none;
-                    margin-left: 0;
-                }
-            }
+    
+    
 
-            .mark{
-                margin-left: 1rem;
-            }
-        
-            button{
-                
-                &.btn {
-                    margin-left: 1rem;
-                }
-        
-                &.btn-ico{
-                    position: absolute;
-                    top: 50%;
-                    right: 1rem;
-                    transform: translateY(-50%);
-                    &.main{
-                        &.ico-sch {
-                            &::before,
-                            &::after {
-                                background-image: url(#{$url}/component/common/ico_sch_20_gn.svg);
-                            }
-                        }
-                    }
-                }
-            }
-        
-            &.border{
-                width: 450px;
-                border: 1px solid var(--tk-gray-60);
-                background-color: var(--tk-white);
-                border-radius: var(--tk-input-rd-sm);
-            }
-
-            .ml10{
-                margin-left: 1rem
-            }
-        }
-    }
-    
-    .btn-wrap {
-        @include flex-layout(flex, center, end);
-        // padding: 2rem 0;
-        padding-top: 2rem;
-    
-        button {
-            margin-left: 1rem;
-        }
-    
-        &.list {
-            @include flex-layout(flex, center, space-between);
-            padding: 3rem 0;
-        }
-    }
-    
     .form-content {
         padding: 2rem;
         display: grid;
@@ -441,114 +363,7 @@
         position: relative;
     }
     
-    .tbl-wrap{
-        border: 1px solid var(--tk-gray-30);
-        border-radius: 1rem;
     
-        .tbl{
-            max-width: 100%;
-            width: 100%;
-            &.data{
-                thead{
-                    th{
-                        background-color: #c8d0d8;
-                        &:first-child{
-                            border-radius: 1rem 0 0 0;
-                        }
-                        &:last-child{
-                            border-radius: 0 1rem 0 0;
-                        }
-    
-                        &.sticky{
-                            position: sticky;
-                            top: 0;
-                            z-index: 10;
-                            background-color: #c8d0d8;
-                        }
-                    }
-                }
-        
-                tbody{
-                    tr{
-                        &:last-child{
-                            td{
-                                border-bottom: 0;
-                                &:first-child{
-                                    border-radius:  0 0 0 1rem;
-                                }
-                                &:last-child{
-                                    border-radius: 0 0 1rem 0;
-                                }
-                                &.data-none{
-                                    border-radius:  0 0 1rem 1rem;
-                                    text-align: center;
-                                }
-                                
-                            }
-                        }
-                        td{
-                            p{
-                                @include ellipsis(1)
-                            }
-                            .form-check{
-                                justify-content: center;
-                                input[type=checkbox] ~ label{
-                                    padding-left: calc(var(--tk-rdo-size-md));
-                                }
-                            }
-                        }
-
-                        &.answer{
-                            cursor: default;
-                        }
-                    }
-
-                }
-            }
-            &.mixing {
-                thead{
-                    tr{
-                        &:nth-child(2){
-                            th{
-                                &:first-child{
-                                    border-radius: 0;
-                                }
-                                &:last-child{
-                                    border-radius: 0;
-                                }
-                            }
-                        }
-                        th{
-                        
-                            border-right: 1px solid var(--tk-secondary-30);
-                
-                            &[rowspan="2"]:last-child{
-                                border-right:0;
-                            }
-                    
-                            &.sticky{
-                                position: sticky;
-                                background-color: #c8d0d8;
-                                z-index: 2;
-                            }
-                            &.top-0 {
-                                top: 0;
-                            }
-                            &.top-40 {
-                                top: 4rem; /* 첫 번째 헤더 높이에 맞춰 조정 */
-                            }
-                        }
-                    }
-                }
-                
-            }
-    
-        }
-        &.overflow-y{
-            overflow-y: auto;
-        }
-    
-    }
     
     
     .mb30{
@@ -901,3 +716,194 @@
 
 
 
+.search-wrap{
+    @include flex-layout(flex, center, space-between);
+    margin-bottom: 3rem;
+    .search-bar {
+        position: relative;
+        @include flex-layout(flex, center, start);
+    
+        .form-select {
+            width: 120px;
+            margin-left: 1rem;
+    
+            &.border-none{
+                border: none;
+                margin-left: 0;
+            }
+        }
+    
+        .form-control {
+            width: 300px;
+            margin-left: 1rem;
+    
+            &.border-none{
+                border: none;
+                margin-left: 0;
+            }
+        }
+
+        .mark{
+            margin-left: 1rem;
+        }
+    
+        button{
+            
+            &.btn {
+            }
+    
+            &.btn-ico{
+                position: absolute;
+                top: 50%;
+                right: 1rem;
+                transform: translateY(-50%);
+                &.main{
+                    &.ico-sch {
+                        &::before,
+                        &::after {
+                            background-image: url(#{$url}/component/common/ico_sch_20_gn.svg);
+                        }
+                    }
+                }
+            }
+        }
+    
+        &.border{
+            width: max-content;
+            border: 1px solid var(--tk-gray-60);
+            background-color: var(--tk-white);
+            border-radius: var(--tk-input-rd-sm);
+        }
+
+        .ml10{
+            margin-left: 1rem
+        }
+    }
+}
+
+.tbl-wrap{
+    border: 1px solid var(--tk-gray-30);
+    border-radius: 1rem;
+
+    .tbl{
+        max-width: 100%;
+        width: 100%;
+        &.data{
+            thead{
+                th{
+                    background-color: #c8d0d8;
+                    &:first-child{
+                        border-radius: 1rem 0 0 0;
+                    }
+                    &:last-child{
+                        border-radius: 0 1rem 0 0;
+                    }
+
+                    &.sticky{
+                        position: sticky;
+                        top: 0;
+                        z-index: 10;
+                        background-color: #c8d0d8;
+                    }
+                }
+            }
+    
+            tbody{
+                tr{
+                    &:last-child{
+                        td{
+                            border-bottom: 0;
+                            &:first-child{
+                                border-radius:  0 0 0 1rem;
+                            }
+                            &:last-child{
+                                border-radius: 0 0 1rem 0;
+                            }
+                            &.data-none{
+                                border-radius:  0 0 1rem 1rem;
+                                text-align: center;
+                            }
+                            
+                        }
+                    }
+                    td{
+                        p{
+                            @include ellipsis(1)
+                        }
+                        .form-check{
+                            justify-content: center;
+                            input[type=checkbox] ~ label{
+                                padding-left: calc(var(--tk-rdo-size-md));
+                            }
+                        }
+                    }
+
+                    &.answer{
+                        cursor: default;
+                    }
+                }
+
+            }
+        }
+        &.mixing {
+            thead{
+                tr{
+                    &:nth-child(2){
+                        th{
+                            &:first-child{
+                                border-radius: 0;
+                            }
+                            &:last-child{
+                                border-radius: 0;
+                            }
+                        }
+                    }
+                    th{
+                    
+                        border-right: 1px solid var(--tk-secondary-30);
+            
+                        &[rowspan="2"]:last-child{
+                            border-right:0;
+                        }
+                
+                        &.sticky{
+                            position: sticky;
+                            background-color: #c8d0d8;
+                            z-index: 2;
+                        }
+                        &.top-0 {
+                            top: 0;
+                        }
+                        &.top-40 {
+                            top: 4rem; /* 첫 번째 헤더 높이에 맞춰 조정 */
+                        }
+                    }
+                }
+            }
+            
+        }
+
+    }
+    &.overflow-y{
+        overflow-y: auto;
+    }
+
+}
+.btn-wrap {
+    @include flex-layout(flex, center, end);
+    // padding: 2rem 0;
+    padding-top: 2rem;
+
+    button {
+        margin-left: 1rem;
+    }
+
+    &.list {
+        @include flex-layout(flex, center, space-between);
+        padding: 3rem 0;
+    }
+}
+.layout, .check-area{
+    @include flex-layout(flex, center, flex-start); }
+
+    .check-area{gap: 3rem;}
(파일 끝에 줄바꿈 문자 없음)
client/resources/scss/admin/login.scss
--- client/resources/scss/admin/login.scss
+++ client/resources/scss/admin/login.scss
@@ -5,6 +5,7 @@
     height: 100%;
 
     .main-wrap{
+        margin-bottom: 5rem;
         width: 100%;
         height: 100%;
 
client/views/component/table/ListTable.vue
--- client/views/component/table/ListTable.vue
+++ client/views/component/table/ListTable.vue
@@ -1,5 +1,5 @@
 <template>
-  <table :class="{ 'tbl': true, [className]: className }">
+  <table :class="{ 'tbl data': true, [className]: className }">
     <colgroup>
       <col v-for="(w, idx) in colgroup" :width="w" :key="idx" />
     </colgroup>
client/views/layout/menuSatisfaction.vue
--- client/views/layout/menuSatisfaction.vue
+++ client/views/layout/menuSatisfaction.vue
@@ -1,5 +1,5 @@
 <template>
-    <div v-if="dgstfnExmnUseYn == 'Y'" class="menu-satisfaction">
+    <div v-if="dgstfnExmnUseYn == 'Y'" class="menu-satisfaction ">
         <div v-if="rspnsYn == 'N'" class="satisfaction-wrap">
             <div class="layout">
                 <div class="check-list">
client/views/pages/adm/boardManagement/template/commonTemplate/CommonSelectList.vue
--- client/views/pages/adm/boardManagement/template/commonTemplate/CommonSelectList.vue
+++ client/views/pages/adm/boardManagement/template/commonTemplate/CommonSelectList.vue
@@ -5,52 +5,51 @@
       <div class="page-title point-font mb30">
         <p>{{ bbsMng.bbsNm }}</p>
       </div>
-      <div class="search-bar mb15">
-        <div class="flex justify-end align-center no-gutters">
-          <div class="gd-4">
-            <div class="border">
-              <select
-                class="border-none gd-3"
-                v-model="search.searchType"
-              >
-                <option value="">전체</option>
-                <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">
-                  {{ item.cdNm }}
-                </option>
-              </select>
-              <input
-                type="text"
-                class="full-input border-none gd-9 condition-input"
-                placeholder="검색어를 입력하세요."
-                v-model="search.searchText"
-                @keyup.enter="findAll"
-              />
+      <div class="search-wrap">
+      <div></div>
+        <div class="search-bar mb15 border">
+                <select
+                  class="border-none sm form-select"
+                  v-model="search.searchType"
+                >
+                  <option value="">전체</option>
+                  <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">
+                    {{ item.cdNm }}
+                  </option>
+                </select>
+                <input
+                  type="text"
+                  class="full-input border-none sm condition-input form-control"
+                  placeholder="검색어를 입력하세요."
+                  v-model="search.searchText"
+                  @keyup.enter="findAll"
+                />
+            <div class="flex gd-3">
+              <div class="gd-6 pr0">
+                <button class="btn xsm green-border-btn" @click="findAll">
+                  검색
+                </button>
+              </div>
+              <div class="gd-6 pr0">
+                <button class="btn xsm darkg-border-btn" @click="fnSearchReset">
+                  <svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화
+                </button>
+              </div>
             </div>
           </div>
-          <div class="flex gd-3">
-            <div class="gd-6 pr0">
-              <button class="large-btn green-border-btn" @click="findAll">
-                검색
-              </button>
-            </div>
-            <div class="gd-6 pr0">
-              <button class="large-btn darkg-border-btn" @click="fnSearchReset">
-                <svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화
-              </button>
-            </div>
-          </div>
-        </div>
       </div>
-      <ListTable
-        class="cmmn-table"
-        :colgroup="colgroup"
-        :thead="thead"
-        :tbody="tbody"
-        @listClick="fnView"
-        :lockList="lockList"
-        :ntcList="ntcList"
-      />
-      <div class="flex justify-between align-center no-gutters">
+      <div class="tbl-wrap">
+        <ListTable
+          class="cmmn-table"
+          :colgroup="colgroup"
+          :thead="thead"
+          :tbody="tbody"
+          @listClick="fnView"
+          :lockList="lockList"
+          :ntcList="ntcList"
+        />
+      </div>
+      <div class="flex justify-between align-center no-gutters btn-wrap list">
         <div class="gd-1"></div>
         <div class="gd-10">
           <PaginationButton
@@ -61,7 +60,7 @@
           />
         </div>
         <div v-if="pageAuth.regAuthrt == 'Y'" class="gd-1">
-          <button class="large-btn green-btn" @click="fnAdd">
+          <button class="btn sm" @click="fnAdd">
             등록
           </button>
         </div>
client/views/pages/adm/boardManagement/template/faqTemplate/FaqSelectList.vue
--- client/views/pages/adm/boardManagement/template/faqTemplate/FaqSelectList.vue
+++ client/views/pages/adm/boardManagement/template/faqTemplate/FaqSelectList.vue
@@ -1,193 +1,145 @@
 <template>
   <!-- 사용자 -->
   <template v-if="pageRole === 'portal'">
-    <div>
-      <div>
+    <div class="content">
+      <div class="page-title point-font mb30">
         <p>{{ bbsMng.bbsNm }}</p>
       </div>
-      <div class="search-bar">
-        <div class="flex justify-end align-center no-gutters">
-          <div class="gd-4">
-            <div class="border">
-              <select
-                name=""
-                id=""
-                class="border-none gd-3"
-                v-model="search.searchType"
-              >
-                <option value="">전체</option>
-                <option
-                  v-for="(item, idx) in codeList"
-                  :key="idx"
-                  :value="item.cd"
-                >
-                  {{ item.cdNm }}
-                </option>
-              </select>
-              <input
-                type="text"
-                class="full-input border-none gd-9 condition-input"
-                placeholder="검색어를 입력하세요."
-                v-model="search.searchText"
-                @keyup.enter="findAll"
-              />
-            </div>
-          </div>
+      <div class="search-wrap">
+        <div></div>
+      <div class="search-bar border">
+          <select name="" id="" class="border-none form-select sm" v-model="search.searchType">
+            <option value="">전체</option>
+            <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">
+              {{ item.cdNm }}
+            </option>
+          </select>
+          <input type="text" class="form-control border-none sm " placeholder="검색어를 입력하세요."
+            v-model="search.searchText" @keyup.enter="findAll" />
           <div class="flex gd-3">
             <div class="gd-6 pr0">
-              <button
-                :class="{
-                  'large-btn': true,
-                  'blue-border-btn': pageRole == 'adm',
-                  'green-border-btn':
-                    pageRole == 'portal',
-                }"
-                @click="findAll"
-              >
+              <button class="btn xsm" :class="{
+                'large-btn': true,
+                'blue-border-btn': pageRole == 'adm',
+                'green-border-btn':
+                  pageRole == 'portal',
+              }" @click="findAll">
                 검색
               </button>
             </div>
             <div class="gd-6 pr0">
-              <button class="large-btn darkg-border-btn" @click="fnSearchReset">
+              <button class="btn tertiary border-none xsm" @click="fnSearchReset">
                 <svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화
               </button>
             </div>
           </div>
         </div>
       </div>
-      <table>
-        <colgroup>
-          <col width="10%" />
-          <col width="40%" />
-          <col width="15%" />
-          <col width="15%" />
-          <col width="20%" />
-        </colgroup>
-        <thead>
-          <tr>
-            <th>답변상태</th>
-            <th>내용</th>
-            <th>작성자</th>
-            <th>작성일</th>
-            <th>비고</th>
-          </tr>
-        </thead>
-        <tbody v-if="list.length > 0">
-          <template v-for="(item, idx) in list" :key="idx">
-            <tr @click="toggle(idx)">
-              <td>{{ item.ansStts == "N" ? "미답변" : "답변완료" }}</td>
-              <td>
-                <div>
-                  <span>Q.</span>
-                  <div v-if="item.prvtPstYn == 'Y'">
-                    <!-- {{ item.rgtr == mbrId || roles == 'ROLE_ADMIN' ? item.bbsCn : '[ 비밀글입니다 ]' }} -->
-                    <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
-                    <p
-                      v-html="
-                        item.rgtr == mbrId || roles == 'ROLE_ADMIN'
+      <div class="tbl-wrap ">
+        <table class="tbl data">
+          <colgroup>
+            <col width="10%" />
+            <col width="40%" />
+            <col width="15%" />
+            <col width="15%" />
+            <col width="20%" />
+          </colgroup>
+          <thead>
+            <tr>
+              <th>답변상태</th>
+              <th>내용</th>
+              <th>작성자</th>
+              <th>작성일</th>
+              <th>비고</th>
+            </tr>
+          </thead>
+          <tbody v-if="list.length > 0">
+            <template v-for="(item, idx) in list" :key="idx">
+              <tr @click="toggle(idx)">
+                <td>{{ item.ansStts == "N" ? "미답변" : "답변완료" }}</td>
+                <td>
+                  <div class="layout">
+                    <span>Q.</span>
+                    <div v-if="item.prvtPstYn == 'Y'" class="layout">
+                      <!-- {{ item.rgtr == mbrId || roles == 'ROLE_ADMIN' ? item.bbsCn : '[ 비밀글입니다 ]' }} -->
+                      <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
+                      <p v-html="item.rgtr == mbrId || roles == 'ROLE_ADMIN'
                           ? item.bbsCn
                           : '[ 비밀글입니다 ]'
-                      "
-                    ></p>
+                        "></p>
+                    </div>
+                    <div v-else>
+                      <!-- {{ item.bbsCn }} -->
+                      <p v-html="item.bbsCn"></p>
+                    </div>
                   </div>
-                  <div v-else>
-                    <!-- {{ item.bbsCn }} -->
-                    <p v-html="item.bbsCn"></p>
-                  </div>
-                </div>
-              </td>
-              <td>{{ item.rgtrNm }}</td>
-              <td>{{ item.regDt }}</td>
-              <td>
-                <div>
-                  <template v-if="item.rgtr == mbrId || roles == 'ROLE_ADMIN'">
-                      <button class="btn sm primary"
-                        @click="fnUpdate(item.bbsId)"
-                      >
-                        수정
+                </td>
+                <td>{{ item.rgtrNm }}</td>
+                <td>{{ item.regDt }}</td>
+                <td>
+                  <div class="icon-btn-zone layout">
+                    <template v-if="item.rgtr == mbrId || roles == 'ROLE_ADMIN'">
+                      <button class="btn-ico md ico-update" @click="fnUpdate(item.bbsId)">
+                        <span class="sr-only">수정</span>
                       </button>
-                      <button
-                        class="btn sm red"
-                        @click="fnDelete(item)"
-                      >
-                        삭제
+                      <button class="btn-ico md ico-del red" @click="fnDelete(item)">
+                        <span class="sr-only">삭제</span>
                       </button>
-                  </template>
-                  <div
-                    v-if="roles == 'ROLE_ADMIN' && item.ansCn == null"
-                  >
-                    <button
-                      class="btn sm btn-chip-outline primary"
-                      @click="fnAnswer(item.bbsId)"
-                    >
-                      답변
-                    </button>
+                    </template>
+                    <div v-if="roles == 'ROLE_ADMIN' && item.ansCn == null" style="height: 24px;">
+                      <button class="btn-ico md ico-comment" @click="fnAnswer(item.bbsId)">
+                        <span class="sr-only">답변</span>
+                      </button>
+                    </div>
                   </div>
-                </div>
-              </td>
-            </tr>
-            <tr v-if="isOpen === idx && item.absBbsId !== null" class="answer">
-              <td>A.</td>
-              <td colspan="3">
-                <div>
-                  <template v-if="item.prvtPstYn == 'Y'">
-                    <!-- {{ item.rgtr == mbrId || roles == 'ROLE_ADMIN' ? item.ansCn : '[ 비밀 답글입니다 ]' }} -->
-                    <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
-                    <p
-                      v-html="
-                        item.rgtr == mbrId || roles == 'ROLE_ADMIN'
+                </td>
+              </tr>
+              <tr v-if="isOpen === idx && item.absBbsId !== null" class="answer">
+                <td>A.</td>
+                <td colspan="3">
+                  <div>
+                    <template v-if="item.prvtPstYn == 'Y'">
+                      <!-- {{ item.rgtr == mbrId || roles == 'ROLE_ADMIN' ? item.ansCn : '[ 비밀 답글입니다 ]' }} -->
+                      <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
+                      <p v-html="item.rgtr == mbrId || roles == 'ROLE_ADMIN'
                           ? item.ansCn
                           : '[ 비밀글입니다 ]'
-                      "
-                    ></p>
-                  </template>
-                  <template v-else>
-                    <!-- {{ item.ansCn }} -->
-                    <p v-html="item.ansCn"></p>
-                  </template>
-                </div>
-              </td>
-              <td>
-                <div
-                  v-if="item.ansCn != null && roles == 'ROLE_ADMIN'"
-                  >
-                    <button
-                      class="btn sm primary"
-                      @click="fnAnswer(item.bbsId)"
-                    >
+                        "></p>
+                    </template>
+                    <template v-else>
+                      <!-- {{ item.ansCn }} -->
+                      <p v-html="item.ansCn"></p>
+                    </template>
+                  </div>
+                </td>
+                <td>
+                  <div v-if="item.ansCn != null && roles == 'ROLE_ADMIN'">
+                    <button class="btn sm primary" @click="fnAnswer(item.bbsId)">
                       답변수정
                     </button>
-                    <button
-                      class="btn sm red"
-                      @click="fnAnswerDel(item)"
-                    >
+                    <button class="btn sm red" @click="fnAnswerDel(item)">
                       답변삭제
                     </button>
-                </div>
+                  </div>
+                </td>
+              </tr>
+            </template>
+          </tbody>
+          <tbody v-else>
+            <tr>
+              <td colspan="5" class="data-none">
+                등록된 정보가 존재하지 않습니다.
               </td>
             </tr>
-          </template>
-        </tbody>
-        <tbody v-else>
-          <tr>
-            <td colspan="5" class="data-none">
-              등록된 정보가 존재하지 않습니다.
-            </td>
-          </tr>
-        </tbody>
-      </table>
+          </tbody>
+        </table>
+      </div>
       <div class="btn-wrap list">
         <div></div>
-        <PaginationButton
-          :className="pageRole === 'adm' ? 'admin-pagination' : ''"
-          v-model:currentPage="search.currentPage"
-          :pagination="search"
-          :click="findAll"
-        />
+        <PaginationButton :className="pageRole === 'adm' ? 'admin-pagination' : ''"
+          v-model:currentPage="search.currentPage" :pagination="search" :click="findAll" />
         <template div v-if="pageAuth.regAuthrt == 'Y'">
-          <button class="btn sm main"
-            @click="fnAdd"
-          >
+          <button class="btn sm main" @click="fnAdd">
             등록
           </button>
         </template>
@@ -196,186 +148,140 @@
   </template>
   <!-- 관리자 -->
   <template v-else>
-      <div class="search-wrap">
-        <div></div>
-        <div class="search-bar border">
-          <select
-            class="form-select sm border-none"
-            v-model="search.searchType"
-          >
-            <option value="">전체</option>
-            <option
-              v-for="(item, idx) in codeList"
-              :key="idx"
-              :value="item.cd"
-            >
-              {{ item.cdNm }}
-            </option>
-          </select>
-          <input
-            type="text"
-            class="form-control sm border-none"
-            placeholder="검색어를 입력하세요."
-            v-model="search.searchText"
-            @keyup.enter="findAll"
-          />
-          <button class="btn-ico xsm ico-sch" @click="findAll">
-            <span class="sr-only">검색</span>
-          </button>
-          <!-- <button class="large-btn darkg-border-btn" @click="fnSearchReset">
+    <div class="search-wrap">
+      <div></div>
+      <div class="search-bar border">
+        <select class="form-select sm border-none" v-model="search.searchType">
+          <option value="">전체</option>
+          <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">
+            {{ item.cdNm }}
+          </option>
+        </select>
+        <input type="text" class="form-control sm border-none" placeholder="검색어를 입력하세요." v-model="search.searchText"
+          @keyup.enter="findAll" />
+        <button class="btn-ico xsm ico-sch" @click="findAll">
+          <span class="sr-only">검색</span>
+        </button>
+        <!-- <button class="large-btn darkg-border-btn" @click="fnSearchReset">
             <svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화
           </button> -->
-        </div>
       </div>
-      <div class="content-zone">
-        <div class="content">
-          <div class="scroll">
-            <div class="tbl-wrap">
-              <table class="tbl data cursor">
-                <colgroup>
-                  <col width="10%" />
-                  <col width="40%" />
-                  <col width="15%" />
-                  <col width="15%" />
-                  <col width="20%" />
-                </colgroup>
-                <thead>
-                  <tr>
-                    <th>답변상태</th>
-                    <th>내용</th>
-                    <th>작성자</th>
-                    <th>작성일</th>
-                    <th>비고</th>
-                  </tr>
-                </thead>
-                <tbody v-if="list.length > 0">
-                  <template v-for="(item, idx) in list" :key="idx">
-                    <tr @click="toggle(idx)">
-                      <td>
-                        <span v-if="item.ansStts == 'N'" class="state red">미답변</span>
-                        <span v-else class="state blue">답변완료</span>
-                      </td>
-                      <td>
-                        <div class="layout">
-                          <span class="state question">Q</span>
-                          <div v-if="item.prvtPstYn == 'Y'" class="layout">
-                            <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
-                            <p
-                              v-html="
-                                item.rgtr == mbrId || roles == 'ROLE_ADMIN'
-                                  ? item.bbsCn
-                                  : '[ 비밀글입니다 ]'
-                              "
-                            ></p>
-                          </div>
-                          <div v-else>
-                            <p v-html="item.bbsCn"></p>
-                          </div>
+    </div>
+    <div class="content-zone">
+      <div class="content">
+        <div class="scroll">
+          <div class="tbl-wrap">
+            <table class="tbl data cursor">
+              <colgroup>
+                <col width="10%" />
+                <col width="40%" />
+                <col width="15%" />
+                <col width="15%" />
+                <col width="20%" />
+              </colgroup>
+              <thead>
+                <tr>
+                  <th>답변상태</th>
+                  <th>내용</th>
+                  <th>작성자</th>
+                  <th>작성일</th>
+                  <th>비고</th>
+                </tr>
+              </thead>
+              <tbody v-if="list.length > 0">
+                <template v-for="(item, idx) in list" :key="idx">
+                  <tr @click="toggle(idx)">
+                    <td>
+                      <span v-if="item.ansStts == 'N'" class="state red">미답변</span>
+                      <span v-else class="state blue">답변완료</span>
+                    </td>
+                    <td>
+                      <div class="layout">
+                        <span class="state question">Q</span>
+                        <div v-if="item.prvtPstYn == 'Y'" class="layout">
+                          <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
+                          <p v-html="item.rgtr == mbrId || roles == 'ROLE_ADMIN'
+                              ? item.bbsCn
+                              : '[ 비밀글입니다 ]'
+                            "></p>
                         </div>
-                      </td>
-                      <td>{{ item.rgtrNm }}</td>
-                      <td>{{ item.regDt }}</td>
-                      <td>
-                        <div class="icon-btn-zone">
-                          <template v-if="item.rgtr == mbrId || roles == 'ROLE_ADMIN'">
-                              <button class="btn-ico md ico-update"
-                                @click="fnUpdate(item.bbsId)"
-                                title="수정"
-                              >
-                              <span class="sr-only">수정</span>
-                              </button>
-                              <button
-                                class="btn-ico md ico-del red"
-                                @click="fnDelete(item)"
-                                title="삭제"
-                              >
-                                <span class="sr-only">삭제</span>
-                              </button>
-                          </template>
-                          <template
-                            v-if="roles == 'ROLE_ADMIN' && item.ansCn == null"
-                          >
-                            <button
-                              class="btn-ico md ico-comment"
-                              @click="fnAnswer(item.bbsId)"
-                              title="답변"
-                            >
+                        <div v-else>
+                          <p v-html="item.bbsCn"></p>
+                        </div>
+                      </div>
+                    </td>
+                    <td>{{ item.rgtrNm }}</td>
+                    <td>{{ item.regDt }}</td>
+                    <td>
+                      <div class="icon-btn-zone">
+                        <template v-if="item.rgtr == mbrId || roles == 'ROLE_ADMIN'">
+                          <button class="btn-ico md ico-update" @click="fnUpdate(item.bbsId)" title="수정">
+                            <span class="sr-only">수정</span>
+                          </button>
+                          <button class="btn-ico md ico-del red" @click="fnDelete(item)" title="삭제">
+                            <span class="sr-only">삭제</span>
+                          </button>
+                        </template>
+                        <template v-if="roles == 'ROLE_ADMIN' && item.ansCn == null">
+                          <button class="btn-ico md ico-comment" @click="fnAnswer(item.bbsId)" title="답변">
                             <span class="sr-only">답변</span>
-                            </button>
-                          </template>
-                        </div>
-                      </td>
-                    </tr>
-                    <tr v-if="isOpen === idx && item.absBbsId !== null" class="answer">
-                      <td></td>
-                      <td colspan="3">
-                        <div class="layout">
-                          <span class="state answer">A</span>
-                          <div v-if="item.prvtPstYn == 'Y'" class="layout">
-                            <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
-                            <p
-                              v-html="
-                                item.rgtr == mbrId || roles == 'ROLE_ADMIN'
-                                  ? item.ansCn
-                                  : '[ 비밀글입니다 ]'
-                              "
-                            ></p>
-                          </div>
-                          <div v-else>
-                            <p v-html="item.ansCn"></p>
-                          </div>
-                        </div>
-                      </td>
-                      <td>
-                        <div
-                          v-if="item.ansCn != null && roles == 'ROLE_ADMIN'" class="btn-zone"
-                          >
-                            <button
-                              class="btn sm primary"
-                              @click="fnAnswer(item.bbsId)"
-                            >
-                              답변수정
-                            </button>
-                            <button
-                              class="btn sm red"
-                              @click="fnAnswerDel(item)"
-                              style="margin-left: 1rem;"
-                            >
-                              답변삭제
-                            </button>
-                        </div>
-                      </td>
-                    </tr>
-                  </template>
-                </tbody>
-                <tbody v-else>
-                  <tr>
-                    <td colspan="5" class="data-none">
-                      등록된 정보가 존재하지 않습니다.
+                          </button>
+                        </template>
+                      </div>
                     </td>
                   </tr>
-                </tbody>
-              </table>
-            </div>
+                  <tr v-if="isOpen === idx && item.absBbsId !== null" class="answer">
+                    <td></td>
+                    <td colspan="3">
+                      <div class="layout">
+                        <span class="state answer">A</span>
+                        <div v-if="item.prvtPstYn == 'Y'" class="layout">
+                          <svg-icon type="mdi" :path="lockPath" :width="18" :height="18"></svg-icon>
+                          <p v-html="item.rgtr == mbrId || roles == 'ROLE_ADMIN'
+                              ? item.ansCn
+                              : '[ 비밀글입니다 ]'
+                            "></p>
+                        </div>
+                        <div v-else>
+                          <p v-html="item.ansCn"></p>
+                        </div>
+                      </div>
+                    </td>
+                    <td>
+                      <div v-if="item.ansCn != null && roles == 'ROLE_ADMIN'" class="btn-zone">
+                        <button class="btn sm primary" @click="fnAnswer(item.bbsId)">
+                          답변수정
+                        </button>
+                        <button class="btn sm red" @click="fnAnswerDel(item)" style="margin-left: 1rem;">
+                          답변삭제
+                        </button>
+                      </div>
+                    </td>
+                  </tr>
+                </template>
+              </tbody>
+              <tbody v-else>
+                <tr>
+                  <td colspan="5" class="data-none">
+                    등록된 정보가 존재하지 않습니다.
+                  </td>
+                </tr>
+              </tbody>
+            </table>
           </div>
         </div>
       </div>
-      <div class="btn-wrap list">
-        <div></div>
-        <PaginationButton
-          :className="pageRole === 'adm' ? 'admin-pagination' : ''"
-          v-model:currentPage="search.currentPage"
-          :pagination="search"
-          :click="findAll"
-        />
-        <template div v-if="pageAuth.regAuthrt == 'Y'">
-          <button class="btn sm main"
-            @click="fnAdd"
-          >
-            등록
-          </button>
-        </template>
-      </div>
+    </div>
+    <div class="btn-wrap list">
+      <div></div>
+      <PaginationButton :className="pageRole === 'adm' ? 'admin-pagination' : ''"
+        v-model:currentPage="search.currentPage" :pagination="search" :click="findAll" />
+      <template div v-if="pageAuth.regAuthrt == 'Y'">
+        <button class="btn sm main" @click="fnAdd">
+          등록
+        </button>
+      </template>
+    </div>
 
   </template>
 </template>
@@ -564,6 +470,6 @@
   components: {
     PaginationButton: PaginationButton,
   },
-  mounted() {},
+  mounted() { },
 };
 </script>
client/views/pages/adm/boardManagement/template/galleryTemplate/GallerySelectList.vue
--- client/views/pages/adm/boardManagement/template/galleryTemplate/GallerySelectList.vue
+++ client/views/pages/adm/boardManagement/template/galleryTemplate/GallerySelectList.vue
@@ -1,23 +1,25 @@
 <template>
     <!-- 사용자 -->
     <template v-if="pageRole === 'portal'">
-        <div>
-            <div>
+        <div class="content">
+            <div class="page-title point-font mb30">
                 <p>{{ bbsMng.bbsNm }}</p>
             </div>
-            <div class="search-bar">
-                <select name="" id="" class="border-none gd-3" v-model="search.searchType">
-                    <option value="">전체</option>
-                    <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">{{ item.cdNm }}</option>
-                </select>
-                <input type="text" class="full-input border-none gd-9 condition-input"
-                    placeholder="검색어를 입력하세요." v-model="search.searchText" @keyup.enter="findAll">
-
-
-                <button @click="findAll">검색</button>
-        
-                <!-- <button class="large-btn darkg-border-btn" @click="fnSearchReset"><svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화</button> -->
-            </div>
+            <div class="search-wrap">
+                <div class="search-bar">
+                    <select name="" id="" class="border-none gd-3" v-model="search.searchType">
+                        <option value="">전체</option>
+                        <option v-for="(item, idx) in codeList" :key="idx" :value="item.cd">{{ item.cdNm }}</option>
+                    </select>
+                    <input type="text" class="full-input border-none gd-9 condition-input"
+                        placeholder="검색어를 입력하세요." v-model="search.searchText" @keyup.enter="findAll">
+    
+    
+                    <button @click="findAll">검색</button>
+            
+                    <!-- <button class="large-btn darkg-border-btn" @click="fnSearchReset"><svg-icon type="mdi" :path="refreshPath"></svg-icon> 초기화</button> -->
+                </div>
+            </div class="search-wrap">
             <div class="gall-content">
                 <div v-for="(item, idx) in list" :key="idx" @click="fnView(idx)" class="gall-item">
                     <div class="gall-img">
client/views/themes/tema_v2/css/component.css
--- client/views/themes/tema_v2/css/component.css
+++ client/views/themes/tema_v2/css/component.css
@@ -1,10 +1,14 @@
 @charset "utf-8";
 .user-wrap{
-    .content {
+
+    .content, .breadcrumb-warp {
         width: 1400px;
         margin: 0 auto;
+       
     }
-    
+    .breadcrumb-warp{
+        text-align: end;
+    }
     .row {
         padding-top: 5px;
         padding-bottom: 5px;
@@ -685,17 +689,17 @@
         font-size: 1.3rem;
     }
     
-    .pagination-button-type a {
+    /* .pagination-button-type a {
         display: block;
         text-align: center;
         cursor: pointer;
         border: 1px solid var(--dark);
         padding: 0 7px;
         border-radius: 0.5rem;
-    }
+    } */
     
     /* 정우추가 */
-    .pagination-button-type a.prev:after {
+    /* .pagination-button-type a.prev:after {
         content: "\003C";
         font-weight: 900;
     
@@ -716,12 +720,12 @@
         content: "\003E\003E";
         font-weight: 900;
     
-    }
+    } */
     
     .pagination-button-type a.active {
-        background-color: var(--green);
-        color: white;
-        cursor: default !important;
+        background-color: var(--tk-primary);
+        /* color: white;
+        cursor: default !important; */
     }
     
     
client/views/themes/tema_v2/css/style.css
--- client/views/themes/tema_v2/css/style.css
+++ client/views/themes/tema_v2/css/style.css
@@ -246,9 +246,17 @@
         word-break: break-all;
     }
     
-    
-    
+    .menu-satisfaction{
+        width: 1400px;
+        margin: 0 auto;
+        padding: 0;
+        .write-zone {
+            padding-left: 3rem;
+            width: calc(100% - 537px);
+        }
+    }
 }
+.border-none{border: none !important;}
 
 
 
Add a comment
List