Как создать иерархию классов в CSS для MVC4 Razor?

0

Я изучаю, как создавать классы в CSS с помощью MVC4 и Razor. Я хочу создать класс для таблицы, которая отображается на моей домашней странице со специальными классами разметки для элементов td с зачеркиванием, а некоторые элементы td выделены жирным шрифтом. Я не знаю, как создать класс, принадлежащий другому классу. Я чувствую, что, делая подкласс в моем классе таблицы, я могу сохранить более организованный и чистый CSS-код.

У меня есть несколько вопросов.

  • Как создать новый класс таблицы, который наследуется от базовой таблицы?

  • Должен ли я помещать новые классы в отдельный файл CSS?

  • Если ответ на предыдущий вопрос да, то что мне нужно сделать для Razor и MVC4, чтобы увидеть новый файл?

  • Как создать td-элемент в этой новой таблице и заставить его наследовать от базового td базовой таблицы?

см. код ниже

/* tables
----------------------------------------------------------*/
table {
    border-collapse: collapse;
    border-spacing: 0;
    margin-top: 0.75em;
    border: 0 none;
}

th {
    font-size: 1.2em;
    text-align: left;
    border: none 0px;
    padding-right: 0.4em;
}
    th:first-child{
        margin-left:0px;
    }
    th:last-child{
        margin-right:0px;
    }
    th a {
        display: block;
        position: relative;
    }

    th a:link, th a:visited, th a:active, th a:hover {
        color: #333;
        font-weight: 600;
        text-decoration: none;
        padding: 0;
    }

    th a:hover {
        color: #000;
    }

    th.asc a, th.desc a {
        margin-right: .75em;
    }

    th.asc a:after, th.desc a:after {
        display: block;
        position: absolute;
        right: 0em;
        top: 0;
        font-size: 0.75em;
    }

    th.asc a:after {
        content: '▲';
    }

    th.desc a:after {
        content: '▼';
    }

td {
    padding: 0.25em 2em 0.25em 0em;
    border: 0 none;
}

tr.pager td {
    padding: 0 0.25em 0 0;
}

Изображение 174551

  • 0
    Не могли бы вы уточнить, почему вы думаете, что css-rules и mvc4 и razor взаимосвязаны?
  • 0
    Я сделал ошибочное предположение, что они были связаны, потому что они использовались вместе при создании программы в ASP.Net MVC4.
Теги:
razor
asp.net-mvc
asp.net-mvc-4

1 ответ

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

Чтобы задать свои вопросы:

How do я create a new table class that inherits from the base table?

Если у вас нет файла css, который сбрасывает все правила стиля, каждый элемент наследуется из файла по умолчанию в браузере. Если вы определяете правила стиля для таблицы элементов таблицы {....} и создаете другое правило стиля.foo {}, css-правила для table.foo состоят из стиля по умолчанию, определенного стиля для элемента и конкретного стиль. Вы можете проверить это с помощью инструментов для обработки хрома и проверить элемент.

Should я put new classes in a separate CSS file?

Нет, если у вас нет веской причины. Просто уточнить - правило большого пальца помещает все правила стиля в один файл. Но не каждое правило в новом отдельном файле.

How do я create a td element under that new table and cause it to inherit from the base td of the base table?

См. Выше td {background-color: red} td.bgBlue {background-color: blue} и html <td class="bgBLue"> Но есть и другие способы. Я бы порекомендовал вам прочитать учебник об основных правилах CSS и наследовании правил стиля.

Обновить

I want to create a class for a table that... with special markup for td elements with strikethrough, and some td elements bolded. Для зачеркивания (css 2.1 или css 3) вы можете использовать текстовое украшение, которое, кажется, не поддерживается очень хорошо. Хотя может быть, что таблица совместимости браузера устарела, потому что она работала в обоих проверенных браузером (IE11 и chrome31).

.isBold { font-weight: bold;}           
.isStrikethrough {text-decoration:line-through; }

и html

<table>
    <tr><td class="isBold">bold</td></tr>
    <tr><td class="isStrikethrough">one</td></tr>
</table>

Могут быть хаки для старых браузеров, используя, например, <del>your text</del> и накладывая прозрачное изображение.

Ещё вопросы

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