mobile-override.css 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440
  1. /**
  2. * 移动端优化样式覆盖
  3. * 解决手机访问时的布局和显示问题
  4. */
  5. /* ========== 全局优化 ========== */
  6. @media screen and (max-width: 768px) {
  7. /* 基础布局优化 */
  8. html, body {
  9. overflow-x: hidden;
  10. -webkit-overflow-scrolling: touch;
  11. }
  12. .layui-container {
  13. width: 100%;
  14. padding-left: 15px;
  15. padding-right: 15px;
  16. }
  17. /* 防止图片/视频超出屏幕 */
  18. img, video, iframe {
  19. max-width: 100%;
  20. height: auto;
  21. }
  22. /* 表格横向滚动 */
  23. .layui-table-view {
  24. overflow-x: auto;
  25. -webkit-overflow-scrolling: touch;
  26. }
  27. .layui-table-view table {
  28. min-width: 600px;
  29. }
  30. /* 按钮适配 */
  31. .layui-btn {
  32. padding: 0 15px;
  33. height: 38px;
  34. line-height: 38px;
  35. font-size: 14px;
  36. }
  37. .layui-btn-sm {
  38. height: 30px;
  39. line-height: 30px;
  40. padding: 0 10px;
  41. }
  42. .layui-btn-lg {
  43. height: 44px;
  44. line-height: 44px;
  45. }
  46. /* 表单优化 */
  47. .layui-input, .layui-textarea, .layui-select {
  48. height: 38px;
  49. line-height: 1.3;
  50. font-size: 14px;
  51. }
  52. .layui-textarea {
  53. min-height: 100px;
  54. }
  55. /* 卡片间距优化 */
  56. .fly-panel, .layui-card {
  57. margin-bottom: 15px;
  58. border-radius: 8px;
  59. }
  60. .layui-card-header {
  61. font-size: 15px;
  62. font-weight: 600;
  63. padding: 12px 15px;
  64. }
  65. .layui-card-body {
  66. padding: 15px;
  67. }
  68. /* 导航优化 */
  69. .layui-nav .layui-nav-item a {
  70. padding: 0 15px;
  71. }
  72. .layui-nav-child {
  73. border-radius: 8px;
  74. box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  75. }
  76. .layui-nav-child dd a {
  77. padding: 10px 20px;
  78. }
  79. /* 页脚优化 */
  80. .fly-footer {
  81. margin-top: 30px;
  82. padding: 20px 0;
  83. }
  84. .fly-footer .copyright {
  85. font-size: 12px;
  86. line-height: 1.6;
  87. padding: 0 15px;
  88. }
  89. /* 头部导航优化 - 防止拉长 */
  90. .fly-header {
  91. position: fixed;
  92. height: 56px !important;
  93. overflow: visible;
  94. }
  95. .fly-header .layui-container {
  96. height: 56px;
  97. overflow: visible;
  98. }
  99. .fly-header .fly-head {
  100. display: flex;
  101. align-items: center;
  102. justify-content: space-between;
  103. height: 56px;
  104. flex-wrap: nowrap;
  105. }
  106. /* 移动端导航菜单项简化 */
  107. .fly-header .fly-nav-mobile .layui-nav-item {
  108. position: relative;
  109. }
  110. .fly-header .fly-nav-mobile .layui-nav-item a {
  111. display: flex;
  112. align-items: center;
  113. justify-content: flex-start;
  114. }
  115. /* 语言/商城简化显示 */
  116. .fly-header .fly-nav-mobile .nav-lang,
  117. .fly-header .fly-nav-mobile .nav-shop {
  118. font-size: 14px;
  119. }
  120. .fly-header .fly-nav-mobile .nav-lang span,
  121. .fly-header .fly-nav-mobile .nav-shop span {
  122. display: inline-block;
  123. }
  124. }
  125. /* ========== 首页特殊优化 ========== */
  126. @media screen and (max-width: 768px) {
  127. #mainbody {
  128. padding-top: 80px;
  129. height: auto;
  130. min-height: calc(100vh - 61px);
  131. }
  132. #mainbody h2 {
  133. font-size: 36px;
  134. }
  135. #mainbody h2:before {
  136. font-size: 32px;
  137. height: 12px;
  138. }
  139. #mainbody h3 {
  140. font-size: 20px;
  141. }
  142. #mainbody p.desc {
  143. font-size: 14px;
  144. }
  145. #mainbody a {
  146. margin-top: 25px;
  147. padding: 10px 20px;
  148. font-size: 16px;
  149. display: block;
  150. text-align: center;
  151. }
  152. }
  153. /* ========== 用户中心优化 ========== */
  154. @media screen and (max-width: 768px) {
  155. .fly-user-main {
  156. margin-top: 10px;
  157. }
  158. /* 用户信息卡片 */
  159. .fly-userinfo {
  160. padding: 15px;
  161. display: block !important;
  162. background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  163. }
  164. .fly-avatar {
  165. width: 60px !important;
  166. height: 60px !important;
  167. }
  168. .fly-username {
  169. font-size: 14px !important;
  170. padding: 8px 0;
  171. }
  172. .fly-userinfo .layui-btn-group {
  173. display: flex;
  174. gap: 10px;
  175. justify-content: center;
  176. }
  177. .fly-userinfo .layui-btn-sm {
  178. font-size: 12px;
  179. padding: 0 12px;
  180. }
  181. /* 侧边导航 */
  182. .fly-aside {
  183. width: 280px;
  184. }
  185. .fly-user-main .layui-nav-tree .layui-nav-item a {
  186. padding: 12px 20px;
  187. font-size: 14px;
  188. }
  189. .fly-user-main .layui-nav-tree .layui-nav-item i {
  190. font-size: 14px;
  191. }
  192. /* 主内容区 */
  193. .fly-panel-user {
  194. padding: 15px !important;
  195. }
  196. /* 用户信息网格布局改为单列 */
  197. .user-baseinfo {
  198. grid-template-columns: 1fr;
  199. gap: 12px;
  200. }
  201. .user-baseinfo .layui-card-header {
  202. font-size: 14px;
  203. }
  204. .user-baseinfo .info-value {
  205. font-size: 16px;
  206. }
  207. }
  208. /* ========== 表单优化 ========== */
  209. @media screen and (max-width: 768px) {
  210. .layui-form-item {
  211. margin-bottom: 20px;
  212. }
  213. .layui-form-label {
  214. width: 100%;
  215. text-align: left;
  216. padding: 8px 0;
  217. font-weight: 500;
  218. }
  219. .layui-input-block {
  220. margin-left: 0 !important;
  221. max-width: 100%;
  222. }
  223. .layui-input-inline {
  224. width: 100%;
  225. margin-right: 0 !important;
  226. }
  227. .layui-input-inline input,
  228. .layui-input-inline select,
  229. .layui-input-inline textarea {
  230. width: 100%;
  231. }
  232. /* 验证码输入框优化 */
  233. .verify-box input {
  234. width: calc(100% - 120px) !important;
  235. }
  236. .verify-box img {
  237. height: 38px !important;
  238. }
  239. /* 单选/复选框 */
  240. .layui-form-checkbox,
  241. .layui-form-radio {
  242. margin: 5px 10px 5px 0;
  243. }
  244. /* 提交按钮组 */
  245. .layui-form-item .layui-input-block {
  246. text-align: center;
  247. }
  248. .layui-form-item .layui-input-block .layui-btn {
  249. margin: 5px;
  250. min-width: 100px;
  251. }
  252. }
  253. /* ========== 表格优化 ========== */
  254. @media screen and (max-width: 768px) {
  255. .layui-table-tool {
  256. padding: 10px;
  257. }
  258. .layui-table-tool .layui-btn {
  259. margin-bottom: 8px;
  260. }
  261. .layui-table-page {
  262. padding: 10px;
  263. }
  264. .layui-laypage a,
  265. .layui-laypage span {
  266. padding: 5px 10px;
  267. font-size: 13px;
  268. }
  269. .layui-laypage input,
  270. .layui-laypage button {
  271. height: 30px;
  272. }
  273. }
  274. /* ========== 弹窗优化 ========== */
  275. @media screen and (max-width: 768px) {
  276. .layui-layer {
  277. max-width: 95% !important;
  278. margin: 10px !important;
  279. }
  280. .layui-layer-content {
  281. max-height: 70vh;
  282. overflow-y: auto;
  283. -webkit-overflow-scrolling: touch;
  284. }
  285. .layui-layer-padding {
  286. padding: 15px !important;
  287. }
  288. .layui-layer-btn {
  289. padding: 10px 15px 15px !important;
  290. text-align: center;
  291. }
  292. .layui-layer-btn a {
  293. display: inline-block;
  294. margin: 5px !important;
  295. min-width: 80px;
  296. }
  297. }
  298. /* ========== 提示框优化 ========== */
  299. @media screen and (max-width: 768px) {
  300. .alert {
  301. padding: 12px 15px;
  302. font-size: 13px;
  303. border-radius: 6px;
  304. }
  305. .alert h4 {
  306. font-size: 14px;
  307. margin-bottom: 5px;
  308. }
  309. }
  310. /* ========== 加载动画优化 ========== */
  311. @media screen and (max-width: 768px) {
  312. .layui-layer-loading {
  313. transform: scale(0.8);
  314. }
  315. }
  316. /* ========== 触摸优化 ========== */
  317. @media screen and (max-width: 768px) {
  318. /* 增加触摸目标大小 */
  319. a, button, .layui-btn, input, select, textarea {
  320. min-height: 44px;
  321. min-width: 44px;
  322. }
  323. /* 移除点击高亮 */
  324. * {
  325. -webkit-tap-highlight-color: transparent;
  326. }
  327. /* 下拉菜单优化 */
  328. .layui-nav-child {
  329. max-height: 300px;
  330. overflow-y: auto;
  331. -webkit-overflow-scrolling: touch;
  332. }
  333. }
  334. /* ========== 暗黑模式支持(可选) ========== */
  335. @media (prefers-color-scheme: dark) and (max-width: 768px) {
  336. .fly-panel, .layui-card {
  337. background-color: #1a1a1a;
  338. border-color: #333;
  339. }
  340. .layui-card-header {
  341. color: #fff;
  342. }
  343. .layui-card-body {
  344. color: #ccc;
  345. }
  346. }
  347. /* ========== 横屏优化 ========== */
  348. @media screen and (max-height: 500px) and (orientation: landscape) {
  349. #mainbody {
  350. padding-top: 60px;
  351. height: auto;
  352. }
  353. .fly-userinfo {
  354. padding: 10px;
  355. }
  356. .fly-avatar {
  357. width: 40px !important;
  358. height: 40px !important;
  359. }
  360. .layui-layer-content {
  361. max-height: 60vh;
  362. }
  363. }