2015-07-15 2 views
3

У меня есть страница, которая содержит в нижней 3 кнопки со следующим кодированием:Скрыть кнопки при печати

function printpage() { 
 
     //Get the print button and put it into a variable 
 
     var printButton = document.getElementById("printpagebutton"); 
 
     //Set the print button visibility to 'hidden' 
 
     printButton.style.visibility = 'hidden'; 
 
     //Print the page content 
 
     window.print() 
 
     printButton.style.visibility = 'visible'; 
 
    }
#options { 
 
\t align-content:center; 
 
\t align-items:center; 
 
    text-align: center; 
 
}
<div id="options"> 
 
<input type="submit" value="post news" > 
 
<input id="printpagebutton" type="button" value="print news" onclick="printpage()"/> 
 
<input type="button" value="re-enter the news"> 
 
</div>

мне удалось скрыть кнопку печати во время печати, но я не мог с другими.

Я искал интернет для решения, и на большинство вопросов ответил, добавив display:none; в css, но в итоге у меня есть 3 скрытые кнопки на экране. Я только хочу, чтобы кнопки были спрятаны во время печати. ​​

Ответ может быть простым, мои знания в веб-разработке удобны.

Благодарим вас заблаговременно.

+1

почему бы не использовать файл CSS медиа печати? – atmd

+2

Посмотрите таблицу стилей @: http://www.smashingmagazine.com/2011/11/24/how-to-set-up-a-print-style-sheet/ –

ответ

9

Вы можете использовать запросы CSS @media. Например: будет применяться

@media print { 
 
    #printPageButton { 
 
    display: none; 
 
    } 
 
}
<button id="printPageButton" onClick="window.print();">Print</button>

стили, определенные в @media print блоке только при печати страницы. Вы можете проверить его, нажав кнопку печати в фрагменте; вы получите пустую страницу.

3

Вы можете использовать медиа-запрос CSS целевой печати:

@media print { 
    .hide-print { 
    display: none; 
    } 
} 
+1

Лучше всего использовать существующие идентификаторы, когда можно избежать излишней раздутости. В этом случае '# printPageButton'. –

+1

Идентификаторы уникальны и имеют высокий уровень специфичности, поэтому классы рекомендуются для стилизации. – Guy

1

Назначить идентификатор для других 2 кнопок. Для кнопки POST NEWS вы можете установить идентификатор до postnews и RE-ENTER NEWS до reenterthenews; Тогда сделайте это

function printpage() { 

    //Get the print button and put it into a variable 
    var printButton = document.getElementById("printpagebutton"); 
    var postButton = document.getElementById("postnews"); 
    var reenterButton = document.getElementById("reenterthenews"); 

    //Set the button visibility to 'hidden' 
    printButton.style.visibility = 'hidden'; 
    postButton.style.visibility = 'hidden'; 
    reenterButton.style.visibility = 'hidden'; 

    //Print the page content 
    window.print() 

    //Restore button visibility 
    printButton.style.visibility = 'visible'; 
    postButton.style.visibility = 'visible'; 
    reenterButton.style.visibility = 'visible'; 

} 

HTML

<div id="options"> 
<input type="submit" id="postnews" value="post news" > 
<input id="printpagebutton" type="button" value="print news" onclick="printpage()"/> 
<input type="button" id="reenterthenews" value="re-enter the news"> 
</div> 
Смежные вопросы