我正在使用Javascript学习浏览器DOM并构建一个"系统"这依赖于毫米单位而不是px。 我知道如何设置元素大小(mm),与
配合使用public HttpURLConnection createConnection(){
try{
urlconnection=(HttpURLConnection)url.openConnection();
}catch(Exception e){
Log.e("Can't create connections", e.getMessage());
}
return urlconnection;
}
public String doFunctionPost(JSONObject object){
try{
urlconnection=createConnection();
urlconnection.setDoInput(true);
urlconnection.setDoOutput(true);
urlconnection.setRequestMethod(method);
urlconnection.setUseCaches(false);
urlconnection.setConnectTimeout(10000);
urlconnection.setReadTimeout(10000);
urlconnection.setRequestProperty("json", object.toString());
urlconnection.setRequestProperty("Content-Type", "application/json");
OutputStreamWriter out=new OutputStreamWriter(urlconnection.getOutputStream());
out.write(object.toString());
System.out.println(object.toString());
out.close();
httpResult=urlconnection.getResponseCode();
System.out.println("Response Code"+ httpResult);
result=readResponse();
}catch(Exception e){
Log.e("Response Error", e.getMessage());
}finally{
removeConnection();
}
return result;
}
public String readResponse(){
try{
if(httpResult==HttpURLConnection.HTTP_OK){
BufferedReader buffer_reader=new BufferedReader(new InputStreamReader(urlconnection.getInputStream(),"utf-8"));
String line=null;
sb=new StringBuilder();
while((line=buffer_reader.readLine())!=null){
sb.append(line+"\n");
}
buffer_reader.close();
System.out.println("buffer_reader"+sb.toString());
}else{
Log.e("Error on posting", urlconnection.getResponseMessage());
}
}catch(Exception e){
Log.e("Error in Response", e.getMessage());
}
return sb.toString();
}
但是我在使用除px以外的任何其他单位检索测量时遇到问题。有办法吗? s?
SIDENOTE:没有办法为css定义全局默认单位系统吗?可以方便地定义一次使用哪些单位,然后只使用元素的普通值。
答案 0 :(得分:3)
是否无法为css定义全局默认单位系统?
不,没有。
但是我在使用px以外的任何其他单位检索测量时遇到问题。有没有办法做到这一点?
不,没有。
CSS"像素" is effectively 1/96th of an inch,0.26毫米。因此,您可以通过以像素为单位并乘以0.26来获得mm的大小。
然而,注意,这是"参考"像素的大小。从链接:
参考像素是设备上一个像素的视角,像素密度为96dpi,距离读取器的臂长度。对于标称臂的28英寸长度,视角因此约为0.0213度。对于手臂长度的读数,1px因此对应于约0.26毫米(1/96英寸)。
显示器具有不同的密度,但通常将CSS像素映射为1/96英寸。
This answer原始问题(当我回答时,我没有意识到这是重复的;我应该拥有)有一种非常直接的方法:在{中定义一个元素{1}},然后以像素为单位获取其大小,并知道该设备在该方向上的转化。