У меня есть страница, которая создает таблицу для печати. Мне нужно показать эту страницу без моей окружающей _Layout
страницы, для удобства печати.
Как мне это сделать?
У меня есть страница, которая создает таблицу для печати. Мне нужно показать эту страницу без моей окружающей _Layout
страницы, для удобства печати.
Как мне это сделать?
Предполагая, что вы используете механизм просмотра бритвы (вы упомянули макет, а не главную страницу)
@{
Layout = null;
}
Ну, на самом деле вы должны использовать механизм просмотра бритвы, но в любом случае идея проста. Не указывайте (удалите) ссылку на файл главной страницы в своем представлении aspx и удалите все ContentPlaceHolders, напишите весь контент прямо на странице. Или иначе, если вы не захотите их удалить по какой-то причине. Создайте главную страницу PrintMaster.master
, которая будет содержать только ContentPlaceHolders.
Когда вы создаете представление, оно позволяет вам изменить главную страницу. Если вы сняли отметку с флажка, в представлении отсутствует мастер-страница, и вы можете изменить всю страницу.
Если вам нужно поддерживать отображение результатов на странице, а также иметь доступный для печати вид, вы можете создать второе представление (например, с именем PrintView
), которое не использует макет страницы и вызывает return View("PrintView");
с вашего контроллера.
While creating a new view, you can uncheck the use layout checkbox.
This will create you a view with layout as null.
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Test</title>
</head>
<body>
<div>
</div>
</body>
</html>
Стандартное действие стиля печати может быть выполнено несколькими способами. 1. используйте другое представление с кнопкой печати, которая устанавливает макет в значение null, предполагая, что вы можете сопоставить бритву.
Чтобы сделать это с помощью CSS - вам понадобится отдельный файл css, который будет загружен в печать и скроет ваши основные страницы. См. Различные статьи по ключевым словам css media print например: http://webdesign.about.com/cs/css/a/aa042103a.htm
В этом случае используется
<link rel="stylesheet" type="text/css" href="print.css" media="print" />
с ключом здесь является media = "print", который будет использовать этот css только при печати.