Имею следующее:
Как избавиться от синего подчеркивания? Код ниже:
<Link to="first"><MenuItem style={{paddingLeft: 13, textDecoration: 'none'}}> Team 1 </MenuItem></Link>
Компонент MenuItem взят из http://www.material-ui.com/#/components/menu
Мы будем очень благодарны за любую информацию или руководство. Заранее спасибо.
javascript
reactjs
react-router
Джо Ко
источник
источник
textDecoration: 'none'
на<Link />
компоненте не его ребенок.Ответы:
Я вижу, вы используете встроенные стили.
textDecoration: 'none'
используется в дочернем, где на самом деле он должен использоваться внутри<Link>
как таковой:<Link>
по существу вернет стандартный<a>
тег, поэтому мы применяемtextDecoration
там правило.Надеюсь, это поможет
источник
text-decoration: none;
Если вы используете
styled-components
, вы можете сделать что-то вроде этого:источник
Я думаю, что лучший способ использовать ссылку response-router-dom в MenuItem (и другом компоненте MaterialUI, таком как кнопки) - это передать ссылку в опоре "component"
вам необходимо передать путь маршрута в опоре 'to' элемента MenuItem (который будет передан компоненту Link). Таким образом, вам не нужно добавлять какой-либо стиль, поскольку он будет использовать стиль MenuItem
источник
Есть еще один способ правильно удалить стиль ссылки. Вы должны придать ему стиль,
textDecoration='inherit'
иcolor='inherit'
вы можете добавить их как стиль к тегу ссылки, например:или, чтобы сделать его более общим, просто создайте класс css, например:
А потом просто
<Link className='text-link'>
источник
Вы можете добавить
style={{ textDecoration: 'none' }}
в свойLink
компонент, чтобы удалить подчеркивание. Вы также можете добавить большеcss
вstyle
блок, напримерstyle={{ textDecoration: 'none', color: 'white' }}
.источник
// CSS
// JSX
источник
Есть ядерный подход, который есть в вашем App.css (или аналоге)
что предотвращает подчеркивание всех
<a>
тегов, что является основной причиной этой проблемы.источник
Работаю на меня, просто добавь
className="nav-link"
иactiveStyle{{textDecoration:'underline'}}
источник
Посмотрите здесь -> https://material-ui.com/guides/composition/#button .
Это официальное руководство по пользовательскому интерфейсу. Может быть, вам это пригодится, как и мне.
Однако в некоторых случаях подчеркивание сохраняется, и вы можете использовать для этого text-decoration: «none». Для более чистого подхода вы можете импортировать и использовать makeStyles из material-ui / core.
А затем установите для атрибута className значение {classes.menu-btn} в коде JSX.
источник
Чтобы расширить ответ @ Grgur , если вы посмотрите в свой инспектор, вы обнаружите, что использование
Link
компонентов дает им предустановленное значение цветаcolor: -webkit-link
. Вам нужно будет переопределить это вместе с,textDecoration
если вы не хотите, чтобы он выглядел как гиперссылка по умолчанию.источник
Только это сработало для меня
источник
источник
В некоторых случаях при использовании другого компонента внутри компонента Gatsby
<Link>
добавление символаdiv
withdisplay: 'inline-block'
вокруг внутреннего компонента предотвращает подчеркивание (в примере «Страница»).источник
Если кто-то ищет
material-ui
компонент Link. Просто добавьте свойствоunderline
и установите для него значение none<Link underline="none">...</Link>
источник
Я решил проблему, похожую на вашу. Я попытался проверить элемент в firefox. Я покажу вам некоторые результаты:
Как видите, у: hover есть text-decoration: underline. Я только добавляю в свой файл css:
и проблема решена. Но я также установил text-decoration: none в каких-то других классах (например, вы: D), которые могут иметь некоторые эффекты (я думаю).
источник
Для меня сработало следующее:
источник