Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.03.2021, 14:40
Кандидат Javascript-наук
Отправить личное сообщение для fori Посмотреть профиль Найти все сообщения от fori
 
Регистрация: 27.01.2021
Сообщений: 117

Почему добавление класса работатет а проверка на checked нет
Здраствуйте, етот код создает красивый ефект выплывания underscore для кнопки
<!DOCTYPE html>

<head>
	<script src="https://code.jquery.com/jquery-3.6.0.js"></script>
</head>

<body>
	<label class="signup-inactive"><input type="radio" class="btn" />Sign up</label>
	<script>$(function () {
			$(".btn").click(function () {
				$(".signup-inactive").toggleClass("signup-active");
			});
		});</script>
</body>
<style>
	.btn {
		cursor: pointer;
		text-decoration: none;
		transition: all 0.25s ease;
		color:red;
	}

	.signup-active {
		border-bottom: solid 2px #1059ff;
		padding-bottom: 10px;
		transition: all 0.25s ease;
	}

	.signup-inactive {
		text-decoration: none;
		transition: all 0.25s ease;
	}
</style>
</html>

Но можно ли сделать просто input type="radio" и проверять на checked без js? К примеру етот код не работает
<!DOCTYPE html>

<body>
	<label class="signup-inactive"><input type="radio" class="btn" />Sign up</label>
</body>
<style>
	.btn {
		cursor: pointer;
		text-decoration: none;
		transition: all 0.25s ease;
		color: red;
	}

	.btn:checked {
		border-bottom: solid 2px #1059ff;
		padding-bottom: 10px;
		transition: all 0.25s ease;
	}
</style>

</html>

Как ето можно исправить
Ответить с цитированием
  #2 (permalink)  
Старый 25.03.2021, 15:42
Кандидат Javascript-наук
Отправить личное сообщение для fori Посмотреть профиль Найти все сообщения от fori
 
Регистрация: 27.01.2021
Сообщений: 117

получилось так
<!DOCTYPE html>

<body>

	<label class="checkbox-label"><input type="checkbox"><span>Hello world</span></label>
</body>
<style>
	input {
		display: none;
	}

	input+span {
		cursor: pointer;
		text-decoration: none;
		transition: all 0.25s ease;
		color: red;

	}

	input:checked+span {
		border-bottom: solid 2px #1059ff;
		padding-bottom: 10px;
		transition: all 0.25s ease;

	}
</style>

</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В Mozilla работает а в Opera нет почему? alex2012 Общие вопросы Javascript 2 03.08.2013 22:43
Использование классов в JavaScript devote Ваши сайты и скрипты 70 01.02.2013 17:17
проверка наличия определенного класса из нескольких shaltay jQuery 1 20.10.2011 20:14
Почему нет движения элемента? DZHETIGAPA Элементы интерфейса 14 20.04.2011 11:15
Почему то работает, то нет? gyunduz Общие вопросы Javascript 0 22.01.2011 16:08