Files

267 lines
5.6 KiB
CSS

@charset "UTF-8";
/*
* jQuery File Upload Plugin CSS
* https://github.com/blueimp/jQuery-File-Upload
*
* Copyright 2013, Sebastian Tschan
* https://blueimp.net
*
* Licensed under the MIT license:
* http://www.opensource.org/licenses/MIT
*/
.fileinput-button {
position: relative;
overflow: hidden;
display: inline-block;
}
.fileinput-button input {
position: absolute;
top: 0;
right: 0;
margin: 0;
opacity: 0;
-ms-filter: 'alpha(opacity=0)';
font-size: 200px;
direction: ltr;
cursor: pointer;
}
/* Fixes for IE < 8 */
@media screen\9 {
.fileinput-button input {
filter: alpha(opacity=0);
font-size: 100%;
height: 100%;
}
}
.fileupload-buttonbar .btn,
.fileupload-buttonbar .toggle {
margin-bottom: 5px;
}
.progress-animated .progress-bar,
.progress-animated .bar {
background: url("../img/progressbar.gif") !important;
filter: none;
}
.fileupload-process {
float: right;
display: none;
}
.fileupload-processing .fileupload-process,
.files .processing .preview {
display: block;
width: 32px;
height: 32px;
background: url("../img/loading.gif") center no-repeat;
background-size: contain;
}
.files audio,
.files video {
max-width: 300px;
}
@media (max-width: 767px) {
.fileupload-buttonbar .toggle,
.files .toggle,
.files .btn span {
display: none;
}
.files .name {
width: 80px;
word-wrap: break-word;
}
.files audio,
.files video {
max-width: 80px;
}
.files img,
.files canvas {
max-width: 100%;
}
}
/* 九宫格容器 - 固定4列布局 */
.files-grid-list {
display: grid;
grid-template-columns: repeat(5, 1fr); /* 固定4列 */
gap: 20px; /* 网格间距 */
max-width: 1200px;
margin: 0 auto;
justify-items: center; /* 水平居中 */
align-items: start; /* 垂直顶部对齐 */
}
/* 网格项样式 */
.files-grid-list .grid-item {
border: 1px solid #ddd;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
transition: transform 0.3s ease, box-shadow 0.3s ease;
background: #fff;
width: 100%; /* 占满网格单元格 */
max-width: 280px; /* 最大宽度限制 */
}
.files-grid-list .grid-item:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}
/* 图片预览区域 - 使用更具体的选择器覆盖外部样式 */
.files-grid-list .grid-item .files_row_preview {
position: relative !important; /* 使用!important确保优先级 */
overflow: hidden !important;
margin-right: 0 !important; /* 覆盖外部margin */
border: none !important; /* 覆盖外部border */
padding: 0 !important; /* 覆盖外部padding */
width: 100% !important; /* 覆盖外部width */
height: 120px !important; /* 覆盖外部height */
border-radius: 0 !important; /* 覆盖外部border-radius */
text-align: left !important; /* 覆盖外部text-align */
}
.files-grid-list .grid-item .files_row_preview img {
width: 100% !important; /* 覆盖外部max-width */
height: 100% !important; /* 覆盖外部max-height */
max-width: none !important; /* 覆盖外部max-width */
max-height: none !important; /* 覆盖外部max-height */
object-fit: cover !important; /* 图片平铺填充 */
transition: transform 0.3s ease;
display: block !important; /* 确保图片正确显示 */
}
.files-grid-list .grid-item .files_row_preview:hover img {
transform: scale(1.1);
}
/* 剪辑按钮区域 - 隐藏 */
.files-grid-list .grid-item .mpreview {
position: relative;
width: 20px;
top: -20px;
text-align: right;
height: 0;
}
/* 操作按钮区域 - 在图片下方,始终显示 */
.files-grid-list .grid-item .op-btn {
padding: 15px;
background: #f8f9fa;
border-top: 1px solid #eee;
text-align: center;
}
.files-grid-list .op-btn label {
margin: 0 5px;
}
.files-grid-list .op-btn .btn {
padding: 6px 12px;
font-size: 12px;
border-radius: 4px;
border: none;
cursor: pointer;
transition: all 0.3s ease;
}
.files-grid-list .op-btn .file_delete {
background: #dc3545;
color: #fff;
}
.files-grid-list .op-btn .file_delete:hover {
background: #c82333;
}
.files-grid-list .op-btn .file_edit {
background: #28a745;
color: #fff;
}
.files-grid-list .op-btn .file_edit:hover {
background: #218838;
}
.files-grid-list .files_show_title_html {
margin-top: 10px;
margin-bottom: 10px;
padding-left: 15px;
padding-right: 15px;
}
.files-grid-list .files_show_description_html {
margin-top: -5px;
margin-bottom: 10px;
padding-left: 15px;
padding-right: 15px;
}
/* 响应式断点优化 */
@media (max-width: 1200px) {
.files-grid-list {
grid-template-columns: repeat(4, 1fr); /* 保持4列 */
gap: 18px;
padding: 18px;
}
.files-grid-list .grid-item {
max-width: 260px;
}
}
@media (max-width: 768px) {
.files-grid-list {
grid-template-columns: repeat(2, 1fr); /* 平板端2列 */
gap: 15px;
padding: 15px;
}
.files-grid-list .grid-item {
max-width: 300px;
}
}
@media (max-width: 480px) {
.files-grid-list {
grid-template-columns: 1fr; /* 手机端1列 */
gap: 15px;
padding: 10px;
}
.files-grid-list .grid-item {
max-width: 100%;
}
.files-grid-list .grid-item .files_row_preview {
height: 180px !important;
}
}
/* 可选:添加加载动画 */
.files-grid-list .grid-item {
animation: fadeInUp 0.6s ease-out;
}
/* 可选:美化滚动条 */
.files-grid-list::-webkit-scrollbar {
width: 8px;
}
.files-grid-list::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 4px;
}
.files-grid-list::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 4px;
}
.files-grid-list::-webkit-scrollbar-thumb:hover {
background: #a8a8a8;
}