You need to enable JavaScript to run this app. 切换屏幕时如何移除左侧box-shadow 自定义导航时左侧相关样式
优惠活动
大模型
产品
解决方案
定价
更多

切换屏幕时如何移除左侧box-shadow 自定义导航时左侧相关样式

enter image description here

我需要在切换屏幕时自定义左侧的color、border-left或box-shadow属性,同时希望移除左侧的box-shadow效果,恳请各位帮忙提供可行解决方案。

解决方案

1. CSS媒体查询实现(适配不同屏幕尺寸场景)

直接给目标左侧元素添加如下样式,替换对应选择器和参数即可生效:

/* 第一步:强制移除左侧box-shadow */
.left-target-element {
  box-shadow: none !important;
}

/* 小于768px移动端样式自定义 */
@media (max-width: 767px) {
  .left-target-element {
    color: #你需要的色值;
    border-left: 宽度 样式 色值; /* 示例:4px solid #1890ff */
  }
}

/* 大于等于768px桌面端样式自定义 */
@media (min-width: 768px) {
  .left-target-element {
    color: #你需要的色值;
    border-left: 宽度 样式 色值;
  }
}

注:将.left-target-element替换为实际左侧元素的选择器,可通过F12元素审查获取,若样式不生效可叠加父级选择器提升权重。

2. JS动态控制实现(主动切换屏幕/路由场景)

如果是通过事件触发屏幕切换,可监听视口变化动态切换类名控制样式:

const leftEl = document.querySelector('.left-target-element')
// 窗口尺寸变化监听
window.addEventListener('resize', () => {
  if (window.innerWidth < 768) {
    leftEl.classList.add('mobile-left-style')
    leftEl.classList.remove('desktop-left-style')
  } else {
    leftEl.classList.add('desktop-left-style')
    leftEl.classList.remove('mobile-left-style')
  }
})
// 初始化执行一次
window.dispatchEvent(new Event('resize'))

对应CSS样式:

.left-target-element {
  box-shadow: none;
}
.mobile-left-style {
  color: #333;
  border-left: 4px solid #1890ff;
}
.desktop-left-style {
  color: #666;
  border-left: 4px solid #f5222d;
}

内容的提问来源于stack exchange,提问作者Duy Hồng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 02:27:04