Tamanho da coluna com o h:panelGrid

Alguém sabe como eu especifico o tamanho de coluna com o panelGrid ?
Exemplo:
<h:panelGrid columns=“4” width=“100%”>
<h:outputText value=“Campo 1”/>
<h:inputText value=“100%”/>

    <h:outputText value="Campo 2"/>
<h:inputText value="100%"/>

    <h:outputText value="Campo 3"/>
<h:inputText value="100%"/>

    <h:outputText value="Campo 4"/>
<h:inputText value="100%"/>

</h:panelGrid>

Onde gostaria que as 4 colunas representadas pelo grid fossem divididas em 10%, 30%, 10% e 50% e os campos de outPutText e InputText ocupasse 100% do espaço das colunas do grid.

vc vai usar :

"columnClasses="tdBorder" rowClasses="trBorder""

Ai vc seta um estilo para a coluna x linha

Saulo,
Obrigado pela dica, mais estava querendo algo que seja mais produtivo, pois se eu estiver 8 colunas cada um de um tamanho terei que fazer 8 css. Tentei com o rich:column, onde resolveu parcialmente o meu problema, a questão foi que quando adicionei um dataTable, ele mudou o class de todos os componentes rich:column inclusive os que estavam dentro do <h:panelGrid>.
O ideal seria ter como colocar o width dentro do columnClass do <h:panelGrid>.
Alguém tem outra solução ?