Посмотрев на вашу скрипку, я вижу в инспекторе, что сброс Bootstrap применяет следующее: a:not([href]):not([tabindex]) {color: inherit;}
Кроме того, якорь в вашей скрипке не имеет href, так чтовышеупомянутый CSS применяется.
<link href="http://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/>
<div class="k-grid">
<a href="#" class="btn btn-secondary">Button</a>
<a class="btn btn-secondary">Button</a>
</div>
Поэтому попытка стилизовать вашу кнопку (без href) с помощью: .btn-secondary {color: white;}
не будет работать из-за специфичности CSS .
Если вы все еще не понимаете CSS-специфичность , найдите себе калькулятор специфичности, например этот , и вставьте оба селектора в него.
Вы обнаружите, что .btn-secondary
недостаточно конкретен , чтобы переопределить это правило, исходящее из сброса Bootstrap, который применяет стили для вашей кнопки.
Учитывая, что kendo-ui также влияет на стили вашей кнопки с помощью: .k-grid a {color: inherit;}
, лучший способ решить вашу проблему - нацелить кнопку с помощью (как вы уже догадались) селектора более высокой специфичности.
.k-grid a {
color: inherit;
}
.btn.btn-secondary {
color: white;
}
<link href="http://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet" />
<div class="k-grid">
<a href="#" class="btn btn-secondary">Button</a>
<a class="btn btn-secondary">Button</a>
</div>