in reply to foreach inside print

You can always make use of multiple print statements.
#! /usr/bin/perl use CGI; #presumably ... print table( {-width=>"90%", -align=>"center", -style=>"border: ridge lightgreen; color: yellow; font-size: 18", -background=>"../data/image +s/blue.jpg"}; foreach(@files) { print Tr( td( {-align=>'center'}, font( {-size=>5, -color=>'whit +e'}, b( $file ))))); print Tr( {-align=>'center'}, td( submit( $file ))))); }