h41msh1c0r
Goto Top

Powershell html und css Anpassungen

Guten Morgen in die Runde,

ich bin ja nicht so der Freund vom Webseiten bauen, aber damit der Export Nutzerfreundlicher wird gibts da noch etwas klicki bunti. =)
style

Diesen Block geb ich ConvertTo-Html bei "-head" mit.

Ausgabe in der html
webeite

Was ich jetzt noch nicht hinbekomme ist das unterschiedliche Ausrichten der Spalten.

Betroffen sind die letzten beiden Spalten, einmal zentriert und die letzte rechtsbündig. Alle anderen sollen auf linksbündig bleiben.

CSS Part um Spalte 9 rechtsbündig auszurichten:
table.colright td:nth-child(9){
 text-align:right
}

Und die Klasse der Tabelle zuordnen? Nur wenn man die Spalten unterschiedlich ausrichten möchte?

Wie verklicker ich dem ConvertTo-Html die Anpassungen?

Reicht es aus den CSS Part in den Header mit einzutragen?

VG

Content-Key: 379868

Url: https://administrator.de/contentid/379868

Printed on: June 16, 2024 at 00:06 o'clock

Member: erikro
erikro Jul 11, 2018 at 08:34:09 (UTC)
Goto Top
Moin,

wenn Du einzelne Spalten rechts ausrichten willst, dann brauchst Du eine Klasse für td und nicht für table.

td.colright {

                             text-align:right;

}

Die benutzt Du dann für jede Zelle, die rechts ausgerichtet werden soll.

hth

Erik
Member: colinardo
Solution colinardo Jul 11, 2018 updated at 08:55:58 (UTC)
Goto Top
Da iss'er wieder <:--)
Persönlich mache ich das ja lieber immer selber ohne convertto-html wenn ich mehr Formatierungen verwirklichen will aber auch das geht damit:
$data = [[DEIN OBJEKT]]
$colcount = ($data | gm -MemberType NoteProperty).Count

$data | convertto-html -Head " 
<style>
th {
	text-align: left;
	background-color: #666;
	color: white;
	height: 20px;
	padding: 5px;
}
tr td{
	height: 20px;
        background-color:lightgray;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: white;
}
tr td:nth-child($($colcount -1)) {
    text-align:center;
}
tr td:nth-child($colcount) {
    text-align:right;
}
</style>
" 

Manuell geht es bspw. auch so, da bist du dann völlig frei was Formatierung und Co. betrifft:
$data = [[DEIN OBJEKT]]
$colnames = $data | gm -MemberType NoteProperty | select -Expand Name

$html = @"  
<!doctype html>
<html>
<head>
<meta charset="utf-8">  
<title>Daten</title>
<style type="text/css">  
body {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 13px;
}
H1{font-size:1.8em}
table td {
	vertical-align:middle;	
}
th {
	text-align: left;
	background-color: #666;
	color: white;
	height: 20px;
	padding: 5px;
}
tr.bodyrow td{
	height: 20px;
    background-color:lightgray;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: white;
}
tr.bodyrow td:nth-child($($colnames.Count)) {
    text-align:right;
}
tr.bodyrow td:nth-child($($colnames.Count -1)) {
    text-align:center;
}
</style>
</head>

<body>
<h1>Überschrift</h1>
<table width="100%" border="0" cellspacing="0" cellpadding="0">  
  <tr>
    $($colnames | %{
        "<th>$_</th>`r`n"  
    })
  </tr>
    $($data | %{
        $row = $_
        "<tr class=`"bodyrow`">`r`n"  
        $colnames | %{
            "<td>$($row.$_)</td>`r`n"  
        }
        "</tr>`r`n"  
    })
</table>
</body>
</html>
"@   
Grüße Uwe
Member: H41mSh1C0R
H41mSh1C0R Jul 11, 2018 at 10:08:19 (UTC)
Goto Top
Aloa Uwe =)

Es läuft. Musste noch von NoteProperty auf Property wechseln und colcount nochmal klammern und dann liefert er das gewünschte Ergebnis.

THX

Hoffe die User geben Ruhe. ^^
Member: colinardo
colinardo Jul 11, 2018 updated at 10:26:15 (UTC)
Goto Top
colcount nochmal klammern
Wieso? Klammern sind da ausreichend da.
Member: H41mSh1C0R
H41mSh1C0R Jul 11, 2018 updated at 10:35:48 (UTC)
Goto Top
Das erste ist nochmal $($colcount -1) ist geklammert, denke wegen der -1.

tr td:nth-child($colcount)

Da die letzte Spalte hier nicht gleich der letzten Spalte im Data ist musste ich das klammern. =)
Member: colinardo
colinardo Jul 11, 2018 updated at 10:41:32 (UTC)
Goto Top
Zitat von @H41mSh1C0R:
Das erste ist nochmal $($colcount -1) ist geklammert, denke wegen der -1.
Korrekt das ist es ja bereits, weil hier ja gerechnet wird und das ganze als Ergebnis zurückgeliefert werden soll..
> tr td:nth-child($colcount)
> 

Da die letzte Spalte hier nicht gleich der letzten Spalte im Data ist musste ich das klammern. =)
Dann verklammer dich bloß nicht face-smile.

Frohes Schaffen noch.

Uwe
Member: H41mSh1C0R
H41mSh1C0R Jul 11, 2018 at 10:45:20 (UTC)
Goto Top
Alles so geklammert wie das sein soll UND ganz wichtig.

Alle Zeilen im Script mit ausreichend Kommentaren versehen das ich das sollte ich es nochmal anpacken müssen fix anpassen kann.


Zitat von @colinardo:
Frohes Schaffen noch.

Dito. =)