use my query but change it to LEFT OUTER JOIN to deleted. Then you'll know if it is an insert if the deleted PK values are NULL. Something like this:
INSERT INTO audit_tbl(col1, col2, dt, userAction)
SELECT i.col1, i.col2, getdate(), case when d.PK is null then 'I' else 'U' end
from inserted i
inner join deleted d on d.PKs = i.PKs
where d.PK is null
OR not (
i.col1 = d.col1
and i.col2 = d.col2
)
Be One with the Optimizer
TG