В частности, учитывая набор таблиц стилей, которые определяют селектор классов с именем «content_title», существует ли способ применить этот стиль ко всем тегам <h1>
, не меняя каждый из них на <h1 class="content_title">
, т.е. эффективно применять класс для всех экземпляров данного элемента?
Суть в том, что я пытаюсь применить HTML и CSS от графического дизайнера к существующим веб-приложениям, и некоторые селекторы не очень хорошо совпадают.
У меня есть приложение веб-форм ASP.NET, которое использует главные страницы и тему. Мне дали образец HTML / шаблон, который включает несколько таблиц стилей.
Итак, я обновил свою главную страницу, чтобы использовать новый дизайн, и теперь она выглядит примерно так:
<%@ Master Language="VB" AutoEventWireup="false" CodeBehind="MyMaster.master.vb" Inherits="MyApp.MyMaster" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<!-- these are the new style sheet from the graphic designer -->
<link rel="stylesheet" href="../layout.css" media="screen" />
<link rel="stylesheet" href="../cssmenus.css" type="text/css" />
<link rel="stylesheet" href="../dropdown.css" media="screen" />
<link rel="stylesheet" href="../print.css" media="print" />
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body class="twocolumn">
<div id="container">
<!-- etc. etc. -->
<div id="mainContent_app">
<span class="content_title"></span> <!-- this is intended to be a page header/title -->
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder ID="MainForm" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</div>
<!-- end #mainContent -->
<!-- etc. etc. -->
</div>
</body>
</html>
Моя проблема в том, что когда дизайнер использует <span class="content_title"></span>
для представления заголовка страницы, я использовал <h1>
на всех страницах контента. Например:
<%@ Page Title="Simple single serving form" Language="vb" AutoEventWireup="false" MasterPageFile="~/MyMaster.Master" CodeBehind="MyPage.aspx.vb" Inherits="MyApp.MyPage" Theme="MyTheme" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<meta name="keywords" content="keyword1 keyword2 keyword3" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainForm" runat="server">
<h1>This is the page header.</h1>
<p>Here's some text that tells you what to do with this form.</p>
</asp:Content>
Моя цель - использовать стиль дизайнера, не редактируя каждую страницу контента, содержащую <h1>
.
Я мог бы скопировать стили из CSS дизайнера в таблицу стилей в Теме моего приложения (конечно, заменив селектор класса на тег), но тогда я бы не стал использовать исходный CSS, и мне пришлось бы сделайте это снова при следующем изменении внешнего CSS.
Я также вряд ли смогу изменить внешний CSS, чтобы он подходил моему приложению.
Так есть ли что-то умное, что я могу сделать, чтобы сделать <h1>
== class="content_title"
в отношении применения стилей, или мне придется прикусить пулю и обновить каждую из моих страниц контента?