Here is how color single column cells in classic report. I have use Tyler Muth's Blog Conditional Column Formatting in APEX tip for this.

Create report region from query

SELECT e.*,
  CASE
    WHEN sal < 1000
    THEN 'red'
    WHEN sal BETWEEN 1000 AND 2000
    THEN 'yellow'
    WHEN sal > 2000
    THEN 'green'
  END the_color
FROM emp e

Edit region definition and give Static ID EMP_REPORT. Edit "the_color" column attributes and change Display As to Hidden.

Copy your report template to new name and edit template.

Column template need have headers attribute. Change Column Template 1 Like below:

<td #ALIGNMENT# headers="#COLUMN_HEADER_NAME#" class="data">#COLUMN_VALUE#</td>

Change report to use new template.

Create dynamic Action. Select Advanced

  • Name: Color Report Cells
  • Event: After Refresh
  • Selection Type: Region
  • Region: {select your report region}
  • Condition: No Condition
  • Action: Execute JavaScript code
  • Fire On Page Load: True
  • Code:
    $('#EMP_REPORT input[name="f01"]').each(function(i){
      $(this).parents("tr:first").find('[headers="SAL"]').css({"background-color":$v(this)});
     });
    
  • Selection Type: None

See working example.

Check also relating post in OTN forum