awk를 사용하여 HTML 테이블(데이터베이스의 데이터)을 만들었습니다. 셀 값을 기반으로 열의 배경을 만드는 데 막혔습니다. CSS에 대해 잘 모릅니다. 조건에 따라 ont b를 변경할 수 있지만 배경색에 따라 변경할 수는 없습니다. 여기 내 코드가 있습니다. 상태가 100 미만이면 배경은 빨간색이어야 합니다. 그렇지 않으면 배경은 테이블의 나머지 부분과 동일합니다.
BEGIN {
print "<html><body></br></br>The report provides overall Percentage Secured in the given subjects.</br></br></br>"
print "<table border=1 bgcolor= \'LemonChiffon\" cellspacing=1 cellpadding=1>"
}
NR==1 {
# Header row
print "<tr>"
for ( i = 1; i <= NF; i++ ) {
print "<td><b>"$i"</b></td>"
}
print "</tr>"
}
NR>1 {
# Data rows
print "<tr>"
if( $i < 100 ) {
color="RED" \\ Background should be Red if the status is less tha 100\\
}
if( $i == 100 ) {
color="BLACK" \\Same background as rest o the table\\
}
print "<td><b><FONT COLOR=\""color"\" FACE=\"verdana\" SIZE=2>"$1"</b></FONT></td><td>"$2"</td><td>"$3"</td><td>"$4"</td><td>"$5"</td>"
print "</tr>"
}
END {
print "</table></body></html>"
}
답변1
다음은 기본 CSS 속성에 대한 오래되었지만 좋은 참조입니다.http://www.htmlhelp.com/reference/css/properties.html
내가 할게
BEGIN {
print "<html><head>"
print "<title> Set the page title here </title>"
print "<style type=\"text/css\">"
print ".error {
print " color: red,"
print " font-size: larger,"
print " // other properties... take care, no trailing comma allowed"
print "}"
print "</style></head>"
print "<body>"
# use P tags, not BR line breaks -- easier to apply styling.
print "<p>The report provides overall Percentage Secured in the given subjects.</p>"
print "<table border=1 bgcolor=\"LemonChiffon\" cellspacing=1 cellpadding=1>"
}
NR == 1 {...} # I would use TH tags for the headers
NR > 1 {
# Data rows
print "<tr>"
for ( i = 1; i <= NF; i++ ) {
class = $i < 100 ? "class=\"error\"" : ""
printf "<td %s>%s</td>\n", class, $i
}
print "</tr>"
}
스타일을 한 곳에 두는 것이 도움이 되는 경우