Optimize submenu
This commit is contained in:
@@ -79,6 +79,22 @@
|
|||||||
|
|
||||||
.item:hover .submenu {
|
.item:hover .submenu {
|
||||||
display: block;
|
display: block;
|
||||||
|
border: {
|
||||||
|
width: 1px;
|
||||||
|
color: constants.$border-color;
|
||||||
|
style: solid;
|
||||||
|
};
|
||||||
|
animation: 0.3s;
|
||||||
|
|
||||||
|
@include mixins.unique-keyframes {
|
||||||
|
0% {
|
||||||
|
transform: translateY(-10px);
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: translateY(4px);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.submenu {
|
.submenu {
|
||||||
@@ -88,20 +104,29 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
transform: translateY(4px);
|
transform: translateY(4px);
|
||||||
border: {
|
overflow: hidden;
|
||||||
width: 1px;
|
|
||||||
color: constants.$border-color;
|
|
||||||
style: solid;
|
|
||||||
};
|
|
||||||
|
|
||||||
.item {
|
.item {
|
||||||
display: block;
|
display: block;
|
||||||
padding: 10px;
|
|
||||||
font-size: 0.8em;
|
font-size: 0.8em;
|
||||||
|
transition: all 0s;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
padding: 8px 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.item:hover {
|
.item:hover {
|
||||||
transform: none;
|
transform: none;
|
||||||
|
a {
|
||||||
|
background-color: constants.$focus-color !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.active {
|
||||||
|
font-weight: bold;
|
||||||
|
border: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import LoadingMask from '@/components/common/LoadingMask'
|
|||||||
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
||||||
import Icon from '@ant-design/icons'
|
import Icon from '@ant-design/icons'
|
||||||
import { COLOR_FONT_SECONDARY } from '@/constants/Common.constants.ts'
|
import { COLOR_FONT_SECONDARY } from '@/constants/Common.constants.ts'
|
||||||
|
import { NavLink } from 'react-router-dom'
|
||||||
|
|
||||||
export const MainFrameworkContext = createContext<{
|
export const MainFrameworkContext = createContext<{
|
||||||
navbarHiddenState: {
|
navbarHiddenState: {
|
||||||
@@ -113,11 +114,29 @@ const MainFramework: React.FC = () => {
|
|||||||
className={'item'}
|
className={'item'}
|
||||||
key={subRoute.id}
|
key={subRoute.id}
|
||||||
>
|
>
|
||||||
{
|
<NavLink
|
||||||
(
|
to={
|
||||||
subRoute.handle as RouteHandle
|
(route.path ?? '') +
|
||||||
).name
|
'/' +
|
||||||
}
|
(subRoute.path ?? '')
|
||||||
|
}
|
||||||
|
className={({
|
||||||
|
isActive,
|
||||||
|
isPending
|
||||||
|
}) =>
|
||||||
|
isPending
|
||||||
|
? 'pending'
|
||||||
|
: isActive
|
||||||
|
? 'active'
|
||||||
|
: ''
|
||||||
|
}
|
||||||
|
>
|
||||||
|
{
|
||||||
|
(
|
||||||
|
subRoute.handle as RouteHandle
|
||||||
|
).name
|
||||||
|
}
|
||||||
|
</NavLink>
|
||||||
</li>
|
</li>
|
||||||
) : (
|
) : (
|
||||||
<></>
|
<></>
|
||||||
|
|||||||
@@ -53,16 +53,6 @@ const routes: RouteObject[] = [
|
|||||||
menu: true,
|
menu: true,
|
||||||
auth: false
|
auth: false
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'translation',
|
|
||||||
id: 'tools-translationa',
|
|
||||||
Component: React.lazy(() => import('@/pages/tools/Translation')),
|
|
||||||
handle: {
|
|
||||||
name: '翻译',
|
|
||||||
menu: true,
|
|
||||||
auth: false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
handle: {
|
handle: {
|
||||||
|
|||||||
Reference in New Issue
Block a user