I am trying to align different tables with different amount of columns so the first two columns are align and the rest are independently align but using % it is very difficu
You can mix % and px, but you have to think of % as relative to the parent. If the table is 500px, then 50% will be 250px, etc.
If the table has no specified width, then it will automatically adjust to the content width. This makes no sense if you're going to mix, so at a minimum you should specify a table width.