CSS를 사용하여 표 셀에서 오른쪽 정렬


128

나는 이와 같은 오래된 고전적인 코드를 가지고있다.

<td align="right">

셀의 내용을 올바르게 정렬합니다. 이 셀에 2 개의 버튼을 넣으면 셀의 오른쪽 사이트에 버튼이 나타납니다.

그러나 CSS로 리팩토링했지만 오른쪽 정렬과 같은 것은 없습니다. 텍스트 정렬이 표시됩니다. 동일합니까?

답변:


154

사용하다

text-align: right

텍스트 정렬 CSS 속성은 텍스트와 같은 인라인 내용이 부모 블록 요소에서 정렬되는 방식을 설명합니다. text-align은 블록 요소 자체의 정렬을 제어하지 않으며 인라인 내용 만 제어합니다.

보다

텍스트 정렬

<td class='alnright'>text to be aligned to right</td>

<style>
    .alnright { text-align: right; }
</style>

5
<input type = "button"> 블록 요소가 올바르게 정렬되지 않았기 때문에 블록 요소입니까?
Michel

1
때에 따라 다르지. 표 셀 (css 표시 : table-cell) 내부에 블록이있는 단락이 있으며 그 단락의 너비를 100 %로 지정하면 텍스트 정렬 권한을 존중하기 시작합니다. 너비를 정의하는 것이 항상 가장 좋은 것은 아니라고 가정합니다.
Costa

3
그런 다음 속성 text-align뿐만 아니라 버튼과 컨트롤 및 텍스트에 적용하면 속성의 이름이 잘 지정되지 않습니다. 아마도 이것이 호출되어야 content-align했습니까?
Ben

3
Michel : 블록 요소를 인라인 블록으로 설정합니다. 예 : td input {display : inline-block; }
shalamos

1
또는 float : right 또는 good old align = "right"만 작동합니다. wtf?
Tone Škoda 2019

7

지금 나를 위해 일한 것은 다음과 같습니다.

CSS :

.right {
  text-align: right;
  margin-right: 1em;
}

.left {
  text-align: left;
  margin-left: 1em;
}

HTML :

<table width="100%">
  <tbody>
    <tr>
      <td class="left">
        <input id="abort" type="submit" name="abort" value="Back">
        <input id="save" type="submit" name="save" value="Save">
      </td>
      <td class="right">
        <input id="delegate" type="submit" name="delegate" value="Delegate">
        <input id="unassign" type="submit" name="unassign" value="Unassign">
        <input id="complete" type="submit" name="complete" value="Complete">
      </td>
    </tr>
  </tbody>
</table>

다음 바이올린을 참조하십시오.

http://jsfiddle.net/Joysn/3u3SD/


6

CSS3의 'n-child'셀렉터를 잊지 마십시오. 텍스트를 오른쪽에 맞추려는 열의 색인을 알고 있다면 지정할 수 있습니다.

table tr td:nth-child(2) {
    text-align: right;
}

큰 테이블이있는 경우 추가 마크 업을 많이 절약 할 수 있습니다!

여기에 바이올린이 있습니다 .... https://jsfiddle.net/w16c2nad/


훌륭함 : 내가 본 가장 쉽고 깨끗한 솔루션.
ncrypticus

2

td셀에 블록 요소를 배치하는 방법

제공된 답변은 td셀 에서 텍스트를 오른쪽 정렬하는 데 큰 도움이됩니다 .

허용 된 답변에 언급 된대로 블록 요소를 정렬하려고 할 때 해결책이 아닐 수도 있습니다. 블록 요소로이를 달성하기 위해 여백을 사용하는 것이 유용하다는 것을 알았습니다.

일반적인 문법

selector {
  margin: top right bottom left;
}

정당화하다

td {
  /* there is a shorthand, TODO! 🙂 */
  margin: auto 0 auto auto;
}

센터를 정당화하다

td {
  margin: auto auto auto auto;
}

/* or the short-hand */
margin: auto;

가운데 정렬

td {
  margin: auto;
}

JS 피들 예제

또는 옵션 인 경우 td콘텐츠를 표시 할 수 inline-block있지만 하위 요소의 위치가 왜곡 될 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.