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

Ausgedruckt am: 28.03.2024 um 08:03 Uhr

Mitglied: erikro
erikro 11.07.2018 um 10:34:09 Uhr
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
Mitglied: colinardo
Lösung colinardo 11.07.2018 aktualisiert um 10:55:58 Uhr
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
Mitglied: H41mSh1C0R
H41mSh1C0R 11.07.2018 um 12:08:19 Uhr
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. ^^
Mitglied: colinardo
colinardo 11.07.2018 aktualisiert um 12:26:15 Uhr
Goto Top
colcount nochmal klammern
Wieso? Klammern sind da ausreichend da.
Mitglied: H41mSh1C0R
H41mSh1C0R 11.07.2018 aktualisiert um 12:35:48 Uhr
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. =)
Mitglied: colinardo
colinardo 11.07.2018 aktualisiert um 12:41:32 Uhr
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
Mitglied: H41mSh1C0R
H41mSh1C0R 11.07.2018 um 12:45:20 Uhr
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. =)