Стилизация цветов в Rails 4 внутри link_to, но встроенный стиль отображается некорректно

0

<%= link_to "Sign In", new_user_session_path, :method => :get, style: "color:white" %>
<h3>Read More - <%= link_to 'Article', action: :articles, style: "color: purple" %></h3>
<%= link_to 'Click to Read More About What People Are Saying About Us', action: :articles %>

Таким образом, у меня есть три строки кода в теле файла html.erb.

Первый "Войти" отображается как белый, как я хочу.

Вторая, ссылка "Статья" появляется как черная! Я хотел фиолетовый.

Третий, отображается как серый. Но я бы хотел, чтобы он был белым.

Что такое моя проблема? Я пытаюсь изучить рельсы и css одновременно.

Ниже представлен мой всеобъемлющий файл scaffolds.css.scss:

body {
  background-color: #fff;
  color: #333;
  font-family: verdana, arial, helvetica, sans-serif;
  font-size: 13px;
  line-height: 18px;
}

p, ol, ul, td {
  font-family: verdana, arial, helvetica, sans-serif;
  font-size: 13px;
  line-height: 18px;
}

pre {
  background-color: #eee;
  padding: 10px;
  font-size: 11px;
}

a {
  color: #000;
  &:visited {
    color: #666;
  }
  &:hover {
    color: #fff;
    background-color: #000;
  }
}

div {
  &.field, &.actions {
    margin-bottom: 10px;
  }
}

#notice {
  color: green;
}

.field_with_errors {
  padding: 2px;
  background-color: red;
  display: table;
}

#error_explanation {
  width: 450px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 0;
  margin-bottom: 20px;
  background-color: black;
  h2 {
    text-align: left;
    font-weight: bold;
    padding: 5px 5px 5px 15px;
    font-size: 12px;
    margin: -7px;
    margin-bottom: 0px;
    background-color: #c00;
    color: #fff;
  }
  ul li {
    font-size: 12px;
    list-style: square;
  }
}

EDIT: Добавлен визуализированный HTML:

<a data-method="get" href="/users/sign_in" style="color:white">Sign In</a>


<h3>Read More - <a href="/articles?style=color%3A+purple">Articles</a></h3>
<a href="/articles">Click to Read More About What People Are Saying About Us</a>
  • 0
    Полученные теги отображаются правильно?
  • 0
    Да все теги ссылаются на правильные виды
Показать ещё 1 комментарий
Теги:
sass
ruby-on-rails-4

2 ответа

3
Лучший ответ

Вторая ссылка: вам нужно отделить html_options от url_options:

 <h3>Read More - <%= link_to 'Article', {action: :articles}, {style: "color: purple"} %></h3>

В противном случае рельсы создадут ссылку, предполагающую, что style:... является дополнительным параметром GET для передачи по URL-адресу.

Как и в случае с последним, трудно сказать, что, скорее всего, ваши инструкции css переопределяются где-то другим css файлом. Установите firebug в свой браузер (при использовании FF/Chrome) или используйте инструменты разработчика (IE), чтобы найти, где настраивается окончательный цвет ссылок.

1

Я уверен, что этот код будет работать.
<%= link_to "button_name",{:controller => 'controller_name', :action => 'action_name'},{:style=>"color:#fff;"}%>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню